mirror of
https://github.com/tiennm99/zfoo.git
synced 2026-08-20 04:24:13 +00:00
doc[protocol]: 更新说明文档
This commit is contained in:
@@ -37,7 +37,7 @@ Java生态的rpc框架非常多,但是很少有rpc框架能够契合到游戏
|
||||
**JDK 11+**,可以在 **OpenJDK** 和 **Oracle JDK** 无缝切换
|
||||
|
||||
```
|
||||
如果你的机器没有安装JDK 11,最快速的安装方法是在Idea中的Project Structure,Platform Settings,SDKs中直接下载
|
||||
如果你的机器没有安装JDK 11+,最快速的安装方法是在Idea中的Project Structure,Platform Settings,SDKs中直接下载
|
||||
```
|
||||
|
||||
#### 2. [protocol](protocol/README.md) 目前性能最好的Java序列化和反序列化库
|
||||
@@ -77,7 +77,7 @@ NetContext.getCosumer()
|
||||
|
||||
```
|
||||
// 传入需要更新的class文件
|
||||
ConfigUtils.startHotSwapConfig(bytes);
|
||||
HotSwapUtils.hotswapClass(bytes);
|
||||
```
|
||||
|
||||
#### 5. [orm](orm/README.md) 基于mongodb的自动映射框架
|
||||
|
||||
+2
-2
@@ -31,7 +31,7 @@ cpu: i9900k
|
||||
内存:64g
|
||||
```
|
||||
|
||||
- 单线程测试,横坐标为序列化和反序列化的对象数量,纵坐标为花费的时间单位毫秒
|
||||
- 单线程测试,横坐标为序列化和反序列化的对象数量,纵坐标为花费的时间(单位毫秒)
|
||||

|
||||

|
||||

|
||||
@@ -42,7 +42,7 @@ cpu: i9900k
|
||||
- 没有装箱和拆箱,避免了无效GC
|
||||
- 天生线程安全并且无锁化;kryo强制要求每条线程都有自己的一个Kryo实例,这是一个比较重的设计,特别是线程比较多的场景
|
||||
- 没有反射,没有unsafe操作;对比kryo中使用objenesis导致大量unsafe,而且在Java11中运行会出现警告
|
||||
- 优化了int和long的zigzag和varint编码的算法,避免了一些多余的方法的调用和位操作
|
||||
- 优化了int和long的zigzag和varint编码的算法,避免了一些多余的方法调用和位操作
|
||||
- 扁平化了方法栈的调用深度,数据结构嵌套没有任何性能损失,如List<Set<Map<>>>;对比kryo和protobuf数据结构嵌套会出现性能损失
|
||||
- 使用Javassist字节码增强动态生成顺序执行的序列化和反序列化函数,顺序化的函数可以轻易的被JIT编译以达到极致的性能
|
||||
- 其它优点
|
||||
|
||||
Reference in New Issue
Block a user