gRPC Plugin
Description
- The grpc plugin is a plugin that converts the Http protocol into the grpc protocol.
Plugin Setting
-
Add related dependencies and enable plugin, please refer to: Quick start with gRPC .
-
gRPCclient access, please refer to: gRPC Proxy . -
New fields and meanings of grpc plugin since
2.4.3:-
threadpool:There are two types of business thread pools,cachedandshared.cachedis equivalent to the default thread pool officially provided by grpc;sharedthread pool, just as its name,all proxy pluginsshare ashared`Thread pool, the advantage of doing this is that it can reduce the number of thread pools, thereby reducing memory and improving resource utilization.
-
Plugin Detail
After the client accesses the Apache ShenYu gateway, it will automatically register the selector and rule information. You can see it in PluginList -> rpc proxy -> grpc. For details about the selector and rule configuration, see Selector And Rule Config .
Selector Handler
Selector Handler, the handle field, is the processing operation that the gateway can perform after matching the traffic.
-
config details:
-
ip:port:enter the ip:port of your real service . -
protocol:indicates the Http protocol. Generally, the value ishttp://orhttps://. If the value is not specified, the default value ishttp://. -
weight:service weight. -
status:open or close.
-
Metadata
Each grpc interface method, will correspond to a metadata, when the grpc application client access to the Apache ShenYu gateway, will be automatically registered, can be viewed in the shenyu-admin background management system of the BasicConfig --> Metadata management.
-
AppName: specifies the name of the application to which the metadata belongs.
-
MethodName: the name of the method to call.
-
Path: http request path.
-
PathDescribe: the description of the path is easy to view.
-
ParamsType: the parameters are separated by commas (,) in the order of interface parameter types.
-
RpcExpand: other configurations of the
grpcinterface, which support theJSONformat, are as follows:
{
"timeout": 5000,
"methodType": "SERVER_STREAMING"
}
-
Interface: The fully qualified class name of the
grpcinterface. -
RpcType:choose
grpc.