ref[net]: 重构net,重命名包名类名,基本逻辑不变

This commit is contained in:
jaysunxiao
2021-10-14 10:36:35 +08:00
parent cf3b715222
commit 911039cc79
2 changed files with 21 additions and 11 deletions
+13 -7
View File
@@ -1,11 +1,17 @@
#### 为什么选择 Java 11 而不是 Java 8
```
1. var可以减少非常多的代码,使代码更加简介
2. Java 11的版本统一了apiOracle JDK 和 Open JDK 可以无缝切换
3. 11对容器支持友好,现在是容器的时代,反观 Java 8 的一些老版本都不支持容器
4. Java 8过两年会停止维护,能早用就早用
5. 主流的框架全部都已经支持Java 11
```
- var可以减少非常多的代码,使代码更加简介
- Java 11的版本统一了apiOracle JDK 和 Open JDK 可以无缝切换
- 11对容器支持友好,现在是容器的时代,反观 Java 8 的一些老版本都不支持容器
- Java 8过两年会停止维护,能早用就早用
- 主流的框架全部都已经支持Java 11
- 下个版本的spring boot直接最低版本要求Java 17
---
#### 为什么不选择基于interface(接口)的形式提供RPC,像dubbo那样的RPC
- 基于interface的不够灵活,不方便
- 然interface写同步rpc比较方便,不适合异步的写法。现在流行异步调用链的写法,基于interface有点过时了
- 并不是所有编程语言都有interface的,你用了interface的话其它编程语言就没法用了,就无法跨平台了
- 基于packet的容易扩展,可以轻易跨平台
+8 -4
View File
@@ -6,19 +6,23 @@
4. 服务可伸缩,负载均衡,集群监控,应有尽有。
4. 基于Java11,所有的依赖包都是最新的jar包
#### 相关模块
### Ⅱ. 相关模块
- net提供了两层api接口
- IRouter为底层网络接口,直接通过Session连接发送消息
- IConsumer为高层网络接口,是对IRouter的封装,消费者向服务提供者发送RPC消息
```
变态的高性能,高可用性,高伸缩性(一般指增加机器),高扩展性(一般指代码层面的开闭原则)
极致的高性能,高可用性,高伸缩性(一般指增加机器),高扩展性(一般指代码层面的开闭原则)
config,本地配置,zookeeper的注册发现,请求的负载均衡,都放在这个包下
core,核心包,服务器,客户端的统一封装
dispatcher,消息的分发
router,消息的路由
handlernetty的handler,定义了客户端,服务器的一些通用handler
protocol,消息类的注册,消息的编解码,字节码增强等
schemaspring的自定义标签的解析
session,对netty的channel的封装
task通用任务线程池
task,任务线程池,任务的分发
```
#### 诞生背景