t-io 3.5.0 发布, 大学生也能驾驭的网络编程框架

talent-tan
 talent-tan
发布于 2019年08月22日
收藏 24

修改的地方不多,主要是为适应华为某项目提出的某压测场景,本版有代码重构(t-io计划是一年出一到两个有重构但升级成本极低的版本)

tio-core

  • 代码重构,以下类名作了变更,升级后记得搜索替换一下
    ClientGroupContext --> ClientTioConfig
    GroupContext  -->  TioConfig
    ServerGroupContext  -->  ServerTioConfig
    GroupContextKey  --> TioConfigKey

     

  • 升级业务资源bind算法,以适应最近华为某项目提出的某压测场景,当然啦,原来的bind算法,对性能也确实没太讲究。算法系最近独创,对算法有兴趣的可以看org.tio.utils.lock.LockUtils.java源代码,主要是以最优的算法解决锁资源竞争的问题,同时对使用进行了封装,让业务更简便地使用

pom引入

<dependency>
    <groupId>org.t-io</groupId>
    <artifactId>tio-core</artifactId>
    <version>3.5.0.v20190822-RELEASE</version>
</dependency>

最后友情提醒:t-io是各方面完全合规的源码完全开源免费网络编程框架,部分用户对些存疑,存疑的原因主要是因为t-io推出了可选的付费文档,在此再强调一下:文档是可选的,有无文档都可在开源条款许可的前提下将t-io用在商业场景,t-io早期没有任何文档时,就有一批用户通过阅读t-io源代码掌握了t-io!

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 OSCHINA 社区 [http://www.oschina.net]
本文标题:t-io 3.5.0 发布, 大学生也能驾驭的网络编程框架
加载中

精彩评论

loyal
loyal
大学生能加权?文档收费大学生买不起.
talent-tan
talent-tan
千万不要用这种思维去看待现在的大学生,那是真的后生可畏,tio-websocket-client就是一个大学生写的,目前代码已经并入t-io主干,重要的是这位大学生还帮tio-websocket-server实现了fin特性:https://www.t-io.org/doc/tio/316
湖水没了
湖水没了
😁 用起来比netty要简单清晰很多
路小磊
路小磊
吐槽几个问题:

1、XXXConfig确实比XXXContext容易理解,但是建议保留前者的名字,加个@Deprecated
2、3.5.0.v20190822-RELEASE这个版本号真是又臭又长,还是X.X.X简洁
talent-tan
talent-tan
是的,这次的项目,华为提出了一个“极限”压测方案:800个线程持续不断地连接t-io服务器,握手并绑定到同一个群组,然后再断开连接(如此往返持续)

绑定过程其实就是多线程下对集合的修改动作,这样测,常规的锁处理、同步处理,没法适应,所以最近自创了一个解决锁资源的算法,昨天开始测试,目前情况稳定,t-io官网也已经用上这个算法了

最新评论(32

鹅奀嫑昆嘦咬
真无语,开源了,没有使用说明,怎么使用都不说,用个屁啊,安装部署还要收费,真的很无语。
talent-tan
talent-tan
我觉得你需要先弄清楚t-io是啥
1、t-io不存在安装部署一说
2、t-io免费开放了几十章的文档
3、t-io在推出付费文档前,就有很多用户
talent-tan
talent-tan
最新消息,t-io这个版本已经通过华为的“变态测”了:https://www.t-io.org/1165048577215569920
孤独的探索号
孤独的探索号
厉害了老哥,都在华为的项目用上了👍
talent-tan
talent-tan
是的,这次的项目,华为提出了一个“极限”压测方案:800个线程持续不断地连接t-io服务器,握手并绑定到同一个群组,然后再断开连接(如此往返持续)

绑定过程其实就是多线程下对集合的修改动作,这样测,常规的锁处理、同步处理,没法适应,所以最近自创了一个解决锁资源的算法,昨天开始测试,目前情况稳定,t-io官网也已经用上这个算法了
talent-tan
talent-tan
TCP连接断开又涉及到大量资源的有序释放,华为的这个测试方案简直就是挑了t-io最大的软肋(因为只有t-io内置了大量的资源管理与各种数据监控)
开源中国首席服务师
开源中国首席服务师
支持老大
孤独的探索号
孤独的探索号
老哥,稳!
Pader
Pader
大学生能驾驭的算个毛,小学生也能驾驭的才牛逼。
talent-tan
talent-tan
能驾驭和会使用,差别还是比较大
muyu
muyu
女大学生学习t-io有属性加成吗
talent-tan
talent-tan
木总,来来来,给你加鸡腿😄
开源中国123456789
开源中国123456789
t-io和netty什么区别? 是基于netty ?
talent-tan
talent-tan
t-io基于aio技术的,netty基于nio技术的

https://www.t-io.org/doc/tio/156
y
yueyakk
哈哈,大学生估计不会买文档的,都去用netty了
talent-tan
talent-tan
千万不要用这种思维去看待现在的大学生,那是真的后生可畏,tio-websocket-client就是一个大学生写的,目前代码已经并入t-io主干,重要的是这位大学生还帮tio-websocket-server实现了fin特性:https://www.t-io.org/doc/tio/316
Code灬君
Code灬君
真的是牛
湖水没了
湖水没了
😁 用起来比netty要简单清晰很多
talent-tan
talent-tan
谢谢张总一直的支持😋😋
路小磊
路小磊
吐槽几个问题:

1、XXXConfig确实比XXXContext容易理解,但是建议保留前者的名字,加个@Deprecated
2、3.5.0.v20190822-RELEASE这个版本号真是又臭又长,还是X.X.X简洁
talent-tan
talent-tan
谢谢路警官的建议,版本号是出于我升级方便考虑的❤❤
慕容狗蛋
慕容狗蛋
我更习惯 context,毕竟 config 和 context 完全是不同的语义,配置和上下文的意思完全不一样。
talent-tan
talent-tan
这个类,既是全局配置集中地,又是全局资源的集中地,所以两个名字都可以,但t-io的朋友圈中,更多的是觉得Config更容易理解一下,而且GroupContext跟t-io内置的群发、群组容易产生混淆,所以最终还是决定更名为TioConfig
慕容狗蛋
慕容狗蛋
大多数人觉得 config 好理解,估计是因为他们对英文的 context 理解不够好。
返回顶部
顶部