# AIO-SERVER **Repository Path**: vchen_hao/aio-server ## Basic Information - **Project Name**: AIO-SERVER - **Description**: 基于t-io的网络编程框架 - **Primary Language**: Java - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-06-18 - **Last Updated**: 2024-12-27 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## t-io简介 t-io是基于java aio研发的网络编程框架,从收集到的案例来看,用t-io做物联网、IM、客服的比较多,堪称殿堂级网络开发框架 - [快速开始](https://www.tiomq.com/books/doc/126/1013):Show me the code and document - [用户案例](https://www.tiomq.com/books/doc/36/1017):看看哪些人在使用t-io,并且愿意让大家知道他们使用了t-io - [提交案例](https://www.tiomq.com/books/doc/36/1135):这将增加您产品的曝光率,让更多人知道您的产品 - [删除案例](https://www.tiomq.com/books/doc/36/1202):有那么一瞬间,您又不想让您的案例让更多人知道 ## 设计使命 减少网络编程难度和繁琐度,让业务开发人员只需要关注业务设计与实现,不需要花太多时间在网络编程细节、多线程安全、并发性能 ## 代码仓库 [![](https://www.tiocloud.com/1/imgs/product/tio/mayun.png)](https://gitee.com/tywo45/t-io) [![](https://www.tiocloud.com/1/imgs/product/tio/Github.png)](https://github.com/tywo45/t-io) ## 功能介绍 1. **心跳自动处理** :心跳超时检测(服务器端)、心跳定时发送(客户端) 1. **用户管理** :Tio.bindUser()、Tio.getByUserid() 1. **Token管理** :Tio.bindToken()、Tio.getByToken() 1. **Group管理** :Tio.bindGroup()、Tio.getByGroup() 1. **同步发送** :Tio.synSend(),需要协议配合 1. **阻塞发送** :Tio.bSend(),等消息发送成功,再返回 1. **异步发送** :Tio.send(),把消息丢进队列发送 1. **统一TCP&UDP编程API** :除了启动代码略有差异外,面向业务的API几乎一模一样。为一键切换TCP/UDP提供了极大便利 1. **协议适配** :可以通过协议转换,将不同协议转成同一个协议,方便业务进行统一处理 1. **单一通道流量监控** :最近一次收到业务消息包的时间、最近一次发送业务消息包的时间、最近一次收到字节的时间、最近一次发送字节的时间、最近一次packet进入进入发送队列的时间、ChannelContext对象创建的时间、第一次连接成功的时间、连接关闭的时间、本连接已发送的字节数、本连接已发送的packet数、本连接已处理的字节数、本连接已处理的packet数、处理消息包耗时、本连接已接收的字节数、本连接已接收了多少次TCP/UDP数据包、本连接已接收的packet数、心跳超时次数、平均每次TCP接收到的字节数、处理packet平均耗时、平均每次TCP接收到的业务包数 1. **通道组流量监控** :参考GroupStat.java 1. **资源共享** :同一jvm启动多个服务器时,各服务器的资源可以直接共享,简化编程和统计 1. **自动重连** :客户端断开连接时,t-io提供自动重连机制 1. **集群(依附于商业产品)** :t-io内置了强大的集群能力,支持单机集群、双机集群、多机集群,业务节点可在各集群服务器间随意切换 1. **订阅树(依附于指定商业产品)** :t-io内置了强大的高性能订阅树,可以轻松完成订阅、发布等能力 1. **MQTT协议(依附于指定商业产品)** :t-io内置了mqtt协议,含服务器端和客户端 # AIO-SERVER #### 介绍 基于t-io的网络编程框架,对开源T-IO框架代码进行重新组织,按照自己的理解及业务需求进行二次封装改造。 原则上,只对原框架进行扩充,不进行修改。 #### 目录结构 ``` -- aio-server -- 工程总目录 -- aio-server-core -- ``` #### 安装教程 1. xxxx 2. xxxx 3. xxxx #### 使用说明 1. xxxx 2. xxxx 3. xxxx #### 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request #### 特技 1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md 2. Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com) 3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解 Gitee 上的优秀开源项目 4. [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目 5. Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) 6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)