服务之间是怎么通信的?
两种方式:rpc和http
RPC远程服务调用,将请求序列化,通过网络传输,在接收端进行反序列化解析,拿到参数,执行方法,在将结果序列化返回
Http:通过http协议进行通信,信息封装在请求行、请求头和请求体中。
两种方式的比较:
1、速度rpc更快一点
2、RPC难度更难一些,http简单
3、灵活度:http通过rest风格的链接相互调用,RPC需要各个服务之间用相同的语言,因为传入的参数,方法可以接收。并且约定好序列化和反序列化的方式。
Java代码主流有三种处理HTTP请求的方式:1、HttpClient 2、OKHttp 3、URLConnection