Apache License 2.0

项目介绍

tywo45/t-io 是一个托管在 GitHub 上的开源项目,主要使用 Java 编写,采用 Apache License 2.0 许可证,目前获得 1.8k 个 Star、560 次 Fork。

仓库全名
tywo45/t-io
开源许可证
Apache License 2.0
Star 数
1.8k
Fork 数
560

README 摘要

Introduction to t-io T-io is a network programming framework developed based on Java AIO. From the collected cases, t-io is widely used for IoT, IM, and customer service, making it a top-notch network programming framework Quick Start: Show me the code and document User Case: Look at who is using t-io and is willing to let everyone know that they are using t-io Submit Case: This will increase the exposure of your…

完整内容见 GitHub 原始 README 或本页 。

常见问题

t-io 用什么语言开发?

主要使用 Java 编写,采用 Apache License 2.0 许可证,目前有 1.8k 个 Star。

t-io 可以免费商用吗?

仓库采用 Apache License 2.0 许可证,可免费使用与修改,商业使用请遵守许可证条款(例如保留版权声明与许可声明)。

如何获取 t-io 的源码?

可以直接克隆仓库:git clone https://github.com/tywo45/t-io.git,默认分支为 master;安装与运行步骤见仓库 README。

t-io 最近还在维护吗?

仓库最近一次更新为 2025年6月24日,当前没有未关闭的 Issue;Star 数为 1.8k,可作为社区活跃度的参考。

简要分析

热度分
3066
价值分
1285
活跃状态
活跃

语言占比

Batchfile
Java
Shell

Release

README

Introduction to t-io

T-io is a network programming framework developed based on Java AIO. From the collected cases, t-io is widely used for IoT, IM, and customer service, making it a top-notch network programming framework

  • Quick Start: Show me the code and document
  • User Case: Look at who is using t-io and is willing to let everyone know that they are using t-io
  • Submit Case: This will increase the exposure of your product and let more people know about it
  • Delete Case: There was a moment when you didn’t want your case to be known to more people

Source code repository

Design Mission

Reduce the difficulty and complexity of network programming, allowing business developers to focus only on business design and implementation, without spending too much time on network programming details, multi-threaded security, and concurrency performance

Function Introduction

  1. Automatic heartbeat processing: heartbeat timeout detection (server side), heartbeat timing sending (client side)
  2. User Management: Tio.bindUser(), Tio.getByUserid()
  3. Token Management: Tio.bindToken(), Tio.getByToken()
  4. Group Management: Tio.bindGroup(), Tio.getByGroup()
  5. Synchronous sending: Tio.synSend(), requires protocol cooperation
  6. Block sending: Tio.bSend(), wait for the message to be successfully sent before returning
  7. Asynchronous sending: Tio.send(), putting the message into the queue for sending
  8. Unified TCP&UDP Programming API: Except for slightly different startup codes, the business oriented APIs are almost identical. Provides great convenience for one click switching between TCP/UDP
  9. Protocol Adaptation: Different protocols can be converted into the same protocol through protocol conversion, facilitating unified business processing
  10. Single channel traffic monitoring: time of last received business message packet, time of last sent business message packet, time of last received byte, time of last sent byte, time of last packet entering the sending queue, time of ChannelContext object creation, time of first successful connection, time of connection closure, number of bytes sent by this connection, number of packets sent by this connection, number of bytes processed by this connection, number of packets processed by this connection, time taken to process message packets, number of bytes received by this connection, number of TCP/UDP packets received by this connection, number of packets received by this connection T count, heartbeat timeout count, average number of bytes received per TCP, average packet processing time, average number of business packets received per TCP
  11. Channel Group Traffic Monitoring: Refer to GroupStat.java
  12. Resource Sharing: When the same JVM starts multiple servers, the resources of each server can be directly shared, simplifying programming and statistics
  13. Automatic reconnection: When the client disconnects, t-io provides an automatic reconnection mechanism
  14. Cluster (attached to commercial products): T-IO has a powerful clustering capability built-in, supporting single machine clusters, dual machine clusters, and multi machine clusters. Business nodes can switch freely between servers in each cluster
  15. Subscription Tree (attached to specified commercial products): t-io has a powerful high-performance subscription tree built-in, which can easily complete subscription, publishing and other capabilities
  16. MQTT protocol (attached to specified commercial products): t-io has built-in mqtt protocol, including server-side and client-side

Ecological and Case Introduction

HTTP server

Tio HTTP has implemented the HTTP protocol and built-in an MVC, which can replace containers such as Tomcat and Jetty to complete HTTP access

Websocket server

Tio websocket has implemented the websocket protocol, and currently many users use it as their websocket access server

MQTT stress testing tool (commercial product)

TiOMQ Meter is an MQTT stress testing tool developed based on t-io and swing. It can not only test pure MQTT protocol servers, but also test adaptive MQTT protocols Enter image description

Network debugging tool (not open source)

Tio Network Debug is a network protocol debugging tool developed based on t-io and swing, mainly used for early protocol integration of products Enter image description

MQTT client (free)

Please refer to:https://www.tiomq.com/product/client Enter image description

TiOMQ Platform (Commercial Product)

This is an IoT platform, details can refer to:https://env1.tiomq.com Enter image description

Other cases

More ecological or case studies can be found at https://www.tiocloud.com/1/case/ View

Business cooperation

Enter image description

评论

暂无评论