自定义RPC框架思路整理
来源:互联网 发布:淘宝美工岗位 编辑:程序博客网 时间:2024/05/22 07:48
RPC框架数据流程
RPC框架服务端启动原理
要使用我们自定义的RPC框架,服务端必须要做下面两件事:
- 在业务接口的实现类上面添加@RPCService注解
在Spring框架的applicationContext.xml文件中配置框架提供的bean
<bean id="rpcServer" class="cn.itcast.rpc.server.RpcServer"> <constructor-arg name="serverAddress" value="${server.address}"/> <constructor-arg name="serviceRegistry" ref="serviceRegistry"/></bean>
一旦启动Spring框架,Spring框架就会使用我们指定的构造函数来构造指定的类的实例。这个类实现了org.springframework.context.ApplicationContextAware
接口。因此Spring会通过setApplicationContext
方法传递进Context对象。然后通过Context对象就可以获得所有添加了@RPCService注解的类的实例。最后启动netty,即可开启rpc服务器程序。
RPC框架服务端功能列表
- 读取配置文件,获得ZooKeeper集群地址,向ZooKeeper注册自己的地址
- 获取所有@RpcService注释的类对象
- 监听socket端口,解析客户端的请求,调用客户端指定的方法并返回结果
RPC框架代码运行流程
客户端调用服务器原理
用户代码通过框架取得Service实现类(动态代理)。动态代理类截获客户端具体的调用过程,然后向服务端发送请求。最后获得结果。
0 0
- 自定义RPC框架思路整理
- 自定义RPC框架设计思路
- RPC框架实现思路浅析
- 自定义RPC框架实现计划
- 自定义RPC框架实现计划
- 自定义RPC框架实现计划
- Android应用程序框架思路整理
- Android应用程序框架思路整理
- Android应用程序框架思路整理
- python自定义框架整理
- Android自定义组件系列之思路整理
- GAN框架研究与思路整理
- RPC框架
- RPC框架
- RPC 框架
- RPC框架
- RPC框架
- RPC 框架
- 【寒假任务】 洛谷1208 [USACO1.3]混合牛奶 Mixing Milk
- webpack学习笔记一
- 1076_N的阶乘
- Unity 动态加载Animator Event 事件
- 设计模式之单例
- 自定义RPC框架思路整理
- mysql学习笔记(五)索引、视图,导入和导出,备份和恢复
- dell 笔记本 n卡 deepin驱动
- HDU4381:Grid(类01背包)
- 九度OJ-1074-对称平方数
- ArrayList、Vector、HashMap、HashSet的默认初始容量、加载因子、扩容增量
- C语言产生随机数
- Codeforces Round #345 (Div. 2) C
- BZOJ1026: [SCOI2009]windy数(数位dp)