mirror of https://github.com/grpc/grpc-node.git
				
				
				
			
		
			
				
	
	
	
		
			1.9 KiB
		
	
	
	
	
	
			
		
		
	
	
			1.9 KiB
		
	
	
	
	
	
Feature comparison of grpc and @grpc/grpc-js packages
| Feature | grpc | @grpc/grpc-js | 
|---|---|---|
| Client | ✔️ | ✔️ | 
| Server | ✔️ | ❌ | 
| Unary RPCs | ✔️ | ✔️ | 
| Streaming RPCs | ✔️ | ✔️ | 
| Deadlines | ✔️ | ✔️ | 
| Cancellation | ✔️ | ✔️ | 
| Automatic Reconnection | ✔️ | ✔️ | 
| Per-message Compression | ✔️ | only for response messages | 
| 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 | ✔️ | ❌ | 
| Stats/tracing/monitoring | ✔️ | ❌ | 
| Load Balancing | ✔️ | ❌ | 
| Other Properties | grpc | @grpc/grpc-js | 
|---|---|---|
| Pure JavaScript Code | ❌ | ✔️ | 
| Supported Node Versions | >= 4 | ^8.11.2 or >=9.4 | 
| Supported Electron Versions | All | >= 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, the following are handled by the @grpc/grpc-js library:
- grpc.ssl_target_name_override
- grpc.primary_user_agent
- grpc.secondary_user_agent
- grpc.default_authority
- grpc.keepalive_time_ms
- grpc.keepalive_timeout_ms
- channelOverride
- channelFactoryOverride