手撕RPC第二天

前言

今日北京突发大霾,中午看了两个小时的《活着》,活在那个年代是幸运还是不幸,活在这个年代,是幸运还是不幸呢。或许我是幸运的吧。
经过了昨天的疯狂coding和今天上午的疯狂debug,终于完成了我的rpc初号机,虽然它还很简陋,但是已经有了一个伟大框架的雏形。

具体操作

由于代码是拼凑出来的,对具体的流程还没有理清,导致昨天的bug,今天祭出了我的笔和本子,把客户端与服务端的流程都梳理了一遍,找到了问题所在:
因为本人不想加spring,也没打算扫描包,一切都是写死的,于是名字写错了,拿不到函数和接口,就出现了空指针,又修改了一些线程的小问题,终于,小火车呜呜呜的开起来了(狗头.jpg)

优化

群主大大提出了8点建议如下

  • RPC 客户端和服务端应保持长连接,不用每次 send 进行 connect,此处 需优化
  • 所有模块应拆分不应该写在一个工程中,没法引用
  • serialize 可以设计为接口可扩展,而且 JSON 的性能非常低,相当于使用了 HTTP 协议
  • 没有对异常做处理
  • 需设计 RPC 客户端和服务端的拦截器机制
  • RPC 服务端阻塞在 Netty IO 线程组,代码
  • 部分包规划错误,如 RpcHandler 是 RPC 服务端特有的处理,不应放在 common 包
  • 需要更多的例子

下午解决了第一个和第二个问题(虽然第一个问题解决了,但是违反了单一指责原则,抱头哭泣),拆工程花费了大量的时间,因为自己对pom直接互相引用不太熟悉,之前写的项目都是架构师把架子做好,填代码就可以了。
最后重构了一下代码。。接下来解决第三个序列化的问题,钢巴鲁,少年!

转载于:https://www.cnblogs.com/BBchao/p/9958832.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值