drpmma edited a comment on pull request #3422:
URL: https://github.com/apache/rocketmq/pull/3422#issuecomment-953480310


   > Great work, quite a big PR. I am suggesting you can add some doc help 
reviewing this, like the core method call path, or which classes should be 
reviewed thoroughly.
   
   ### Traffic Path
   The traffic path is described as below.
   gRPC Client -> remoting protocol port -> protocol negotiation handler -> 
gRPC protocol port -> gRPC service
   
   ### Main Classes
   * The gRPC service is the main process logic for grpc protocol.
   * The protocol negotiation handler redirect gRPC HTTP2 protocol from netty 
remoting protocol port to actual gRPC port to make it compatible.
   * And the mock Channel / ChannelHandlerContext will write gRPC response for 
Channel.writeAndFlush and ChannelHandlerContext.writeAndFlush.
   
   ```shell
   ### gRPC service
   org.apache.rocketmq.broker.grpc.BrokerGrpcService
   org.apache.rocketmq.namesrv.grpc.NameServerGrpcService
   ### protocol negotiation handler
   org.apache.rocketmq.remoting.netty.protocol.ProtocolNegotiationHandler
   ### mock channel
   org.apache.rocketmq.broker.grpc.adapter.*
   ```
   
   grpc/README.md is updated as well


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to