网站建设中的html,做模板网站的利与弊,好看的页面设计,怎样登网站一.消费方
1.需要使用到动态代理#xff0c;代理指定的接口#xff0c;这样子接口被调用时#xff0c;就可以拿到#xff1a;类名 方法名参数返回值 这些类型。
2.既然是rpc#xff0c;那么接口被调用时#xff0c;肯定在动态代理中会进行网络消息的发送代理指定的接口这样子接口被调用时就可以拿到类名 方法名参数返回值 这些类型。
2.既然是rpc那么接口被调用时肯定在动态代理中会进行网络消息的发送由于是远程调用那么必然动态代理的proxy参数其实是用不到的因为返回的话是依赖于远程的服务提供者。
3.阻塞等待消息的返回支持超时。 二.服务提供者
1.必然要注册到zk中其实就是本地一个Map知道了调用者想调用啥时知道具体的实现。也就是维护了一个MapString, InterfaceImpl的map。
2.消费者通过网络 把想要调用的信息传递过来后服务提供者就找到实现从而调用调用后再返回。 三、请求返回统一封装
RpcRequest
RpcResponse
为啥要封装下呢
对于Request这是因为有一些共性比如消费者需要存储类名 方法名参数返回值。
对于Response则要告诉是否调用成功还是说超时了。 四、序列化
我们这里采用kryo因为我们希望是二进制级别的而且是: 在修改签名时我们不希望再直接生成下proto。