getty - 网络通讯框架


Apache
跨平台
Java

软件简介

getty 是一个网络通讯框架。

getty的特点:

1、完全基于java aio,整个工程只依赖 slf4j(一个日志的门面框架),对工程几乎没有入侵性。

2、借鉴了netty和其他框架的部分优秀设计思想,如责任链、内存池化、零拷贝等优秀的设计模式。

3、简洁的代码,清晰的注释,以及提供了直接可用的多个插件,只要用过netty,那么学习成本基本为零。

4、可直接在安卓上使用,服务与客户端使用几乎一致(api 26+或android 8.0+)

getty的性能和稳定性:

硬件条件:cpu:i7-7700 | 内存:16G | 网络:局域网 | 操作系统:win10家庭版 | jdk 8

经过本人简单的测试,整体的性能和稳定性还是不错的:

1、单连接发送一百万条文本消息耗时277毫秒,这个性能总体上还过得去。

2、开启了SSL以后发送一百万条文本消息大概耗时3.8秒,这个性能也算乐观,因为毕竟SSL本身对消息的加密和解密是非常消耗性能的。

3、同时开启10条连接,每条连接发送一百万条文本消息,每条连接平均耗时是比较均衡的,平均三百多毫秒。性能非常可观

4、服务器启动时的内存消耗,启动时内存消耗非常小,占用还不到40m

5、连续发送一百万条消息时的内存消耗,大概消耗160m左右,而且内存回收也非常迅速