Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

smartboot/smart-socket

Repository files navigation

smart-socket

smart-socket 是一款增强了原生 JDK 实现的 AIO 通信框架。

换言之,smart-socket 100% 遵循 JDK 对于 AIO 接口规范的定义,只是重新提供了一套代码实现。 使其有着相较 JDK 官方 AIO 更高的通信性能,更少的资源开销,以及更稳定的运行保障。

为什么开发 smart-socket?

  • AIO 是一个面向开发人员更友好的设计理念,值得被更多人应用。
  • 原生 JDK 提供的实现存在性能问题,其线程模型限制了 IO 调度效率。
  • 原生 JDK 提供的实现存在资源开销问题,连接越多内存需求越高,难以在低规格服务器中支撑百万级长连接。
  • 原生 JDK 提供的实现存在稳定性问题,Mac 系统下进行压测存在不明原因的死机现象。
  • 我们需要一款比 Netty 更容易上手的通信框架。

🍁项目特色

  1. 高性能、高并发、低延迟、绿色节能。
  2. 代码量极少,可读性强。核心代码仅 2000 余行,工程结构、包层次清晰。
  3. 学习门槛低,二次开发只需实现 2 个接口(Protocol、MessageProcessor),具备通信开发经验的几乎无学习成本。
  4. 良好的线程模型、内存模型设计,保障服务高效稳定的运行。
  5. 支持自定义插件,并已提供了丰富的插件,包括:SSL/TLS通信插件、心跳插件、断链重连插件、服务指标统计插件、黑名单插件、内存池监测插件。

🍒生态项目

🍭推荐

🎃性能排行

输入图片说明

🎈插件清单

Plugin 用途
BlackListPlugin 黑名单插件,smart-socket会拒绝与黑名单中的IP建立连接
BufferPageMonitorPlugin 内存池监控插件
HeartPlugin 心跳插件
MonitorPlugin 服务指标监控插件
SocketOptionPlugin 连接属性配置插件
SslPlugin TLS/SSL加密通讯插件
StreamMonitorPlugin 传输层通讯码流监控插件

🍩感谢

  • 感谢 Gitee 提供的代码托管和曾经的 Pages 服务。
  • 感谢 Github 提供的代码托管和现在的 Pages 服务。
  • 感谢 JetBrains 为 smart-socket 提供的 IDEA License。

🥳加入社群

  • 官方QQ群: 172299083 、830015805。入群条件:
    1. 普通用户:捐赠5元,并备注您的QQ号,我们将人工审核入群人员。
    2. 企业用户:完成【案例登记】并在加群时备注企业名。
  • 扫描底部二维码关注三刀公众号

About

A High Performance Java AIO framework

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 11

AltStyle によって変換されたページ (->オリジナル) /