mirror of https://github.com/grpc/grpc-node.git
2.1 KiB
2.1 KiB
Feature comparison of grpc and @grpc/grpc-js packages
| Feature | grpc (deprecated) |
@grpc/grpc-js |
|---|---|---|
| Client | ✔️ | ✔️ |
| Server | ✔️ | ✔️ |
| Unary RPCs | ✔️ | ✔️ |
| Streaming RPCs | ✔️ | ✔️ |
| Deadlines | ✔️ | ✔️ |
| Cancellation | ✔️ | ✔️ |
| Automatic Reconnection | ✔️ | ✔️ |
| Per-message Compression | ✔️ | ✔️ (except messages sent by the server) |
| Channel State | ✔️ | ✔️ |
| JWT Access and Service Account Credentials | provided by the Google Auth Library | provided by the Google Auth Library |
| Interceptors | ✔️ | ✔️ |
| Connection Keepalives | ✔️ | ✔️ |
| HTTP Connect Support | ✔️ | ✔️ |
| Retries | ✔️ (without hedging) | ✔️ (including hedging) |
| Stats/tracing/monitoring | ✔️ | ❌ |
| Load Balancing | ✔️ | ✔️ |
| Initial Metadata Options | ✔️ | only waitForReady |
| Other Properties | grpc |
@grpc/grpc-js |
|---|---|---|
| Pure JavaScript Code | ❌ | ✔️ |
| Supported Node Versions | >= 4 and <=14 | ^8.13.0 or >=10.10.0 |
| Supported Electron Versions | <=11.2 | >= 3 |
| Supported Platforms | Linux, Windows, MacOS | All |
| Supported Architectures | x86, x86-64, ARM7+ | All |
In addition, all channel arguments defined in this header file are handled by the grpc library.
Of those, a subset are handled by the @grpc/grpc-js library. See the README for @grpc/grpc-js for the list of supported channel options.