One , What is? RPC
RPC Is a remote procedure call （Remote Procedure
Call） Abbreviation for . It is a request for service from a remote computer over a network , Without knowing the protocol of the underlying network technology . That means two servers A,B, An application is deployed in A On the server , Want to call B Methods provided on the application server , Because it is not in a memory space , Cannot be called directly , It is necessary to express the semantics and data of calls through the network .RPC Protocols assume the existence of certain protocols , as TCP or UDP, Carry information data between communication programs . stay OSI In the network communication model ,RPC Across the transport and application layers .RPC Making it easier to develop applications including network distributed multiprogramming .
Two , common RPC frame
Hessian： A lightweight RPC frame , It's based on HTTP Protocol transmission , use Hessian Binary Serialization , Simple function , Easy to use .
Dubbo： It's one of Alibaba's open sources Java High performance excellent service framework , Enables applications to pass high-performance RPC Realize the input and output function of the service , Can be combined Spring Seamless frame connection .
Dubbox： Is a distributed service framework , The predecessor is Dubbo, A few years ago, Alibaba stopped Dubbo Maintenance of , Dangdang Dubbo Optimization based on , To differentiate , I called it Dubbox.
Motan： Sina Weibo's open source RPC frame .
gRPC：Google GPl RPC frame , It supports multi language cross platform and has a powerful binary serialization tool set .
Thrift：Facebook GPl RPC frame ,
HSP： Distributed service framework used internally by Alibaba .