服务注册中心这个东西初步的捋顺了,你微服务架构里每个服务在任何一台机器上部署,都必须往服务注册中心去做一个注册,服务注册中心就可以维护你的每个服务部署的实例地址列表
HTTP、RPC
假设如果你没有RPC的框架,此时假如说你的每个服务对外暴露的接口,都是一些HTTP接口,http://21.38.254.306:8080/xx/xx?xx=xx,其他服务如果说要调用你的这个服务,就必须使用apache的http的组件,或者是JDK自带的http组件,构建出来一个HTTP请求,包括请求路径,请求头,请求体(JSON串过去)
好不容易构建出来一个完整的HTTP请求,通过http组件发送这个HTTP请求过去,在底层也是得跟那个服务的指定机器的指定端口号,也都是建立TCP连接,在TCP连接之上,发送HTTP协议组装出来的请求过去
接收人家给你的HTTP响应,解析HTTP响应,响应头,状态码(404,500),响应体(JSON串),极为麻烦
划时代的RPC这种东西,比如说你发布一个服务,主要就是定义了一些接口
public interface ServcieA {
public String hello(String name);
}如果我要调用你的接口,此时我在代码里,不需要care什么HTTP之类的东西
public void service() {
String result = serviceA.hello(“zhagnsan”);
}