通信框架 smart-socket 1.4.10 发布,bug 修复与示例补充

栏目: 软件资讯 · 发布时间: 5年前

内容简介:smart-socket 是一个 AIO 通信框架,可以快速、轻松地开发 Client/Server 网络应用程序。它大大简化了网络编程难度和复杂度,可广泛应用与各类TCP/UDP的通信场景。 smart-socket 是从许多协议(Http、WebSocket、...

smart-socket 是一个 AIO 通信框架,可以快速、轻松地开发 Client/Server 网络应用程序。它大大简化了网络编程难度和复杂度,可广泛应用与各类TCP/UDP的通信场景。

smart-socket 是从许多协议(Http、WebSocket、MQTT、二进制私有协议)的实践中积累了大量宝贵经验,从而凝练成了一款极简、易用、高性能的通信框架。

极简

  • 支持各种传输类型、协议,且仅围绕着两大核心接口(MessageProcessor、Protocol)编程开发。
  • 灵活且可扩展的状态机设计,可以清晰地分离关注点。
  • 核心包代码 1500行,编译后的jar包仅 44kb(如果对此无明显感触,可以比较其他同类项目)。

易用

  • 文档丰富的 Javadoc 、用户指南和示例。
  • 没有额外的依赖,只要求JDK 8及以上版本。
  • 高度可定制化的插件。已内置一些非常实用且开箱即用的插件:SSL/TLS通信、心跳、断链重连、服务指标统计、黑名单、内存池监测

高性能

  • 更好的吞吐量,更低的延迟
  • 更少的资源消耗
  • 最尽肯能减少不必要的内存拷贝

更新内容

  1. bugfix:修复服务端线程名显示不正确的问题。
  2. 优化:客户端连接失败后自动释放资源,无需用户执行shutdown。感谢smart-socket群友:fanasilver 反馈。
  3. 优化:优化心跳插件设计,引入超时回调机制。关于心跳插件的使用参考:《smart-socket实战:玩转心跳消息
  4. 优化:补充了Push通信示例:《smart-socket实战:服务端主动Push消息至客户端

Maven

<dependency>
    <groupId>org.smartboot.socket</groupId>
    <artifactId>aio-pro</artifactId>
    <version>1.4.11</version>
</dependency>

性能测试

  • 环境准备

    1. 测试项目:smart-http
    2. 通信协议:Http
    3. 压测工具:wrk
    4. 测试机:MacBook Pro, 2.9Ghz i5, 4核8G内存
    5. 测试命令:
    wrk -H 'Host: 10.0.0.1' -H 'Accept: text/plain,text/html;q=0.9,application/xhtml+xml;q=0.9,application/xml;q=0.8,*/*;q=0.7' -H 'Connection: keep-alive' --latency -d 15 -c 1024 --timeout 8 -t 4 http://127.0.0.1:8080/plaintext -s pipeline.lua -- 16
  • 测试结果:smart-socket的性能表现基本稳定维持在 100MB/s 左右。

    连接数 Requests/sec Transfer/sec
    512 775909.66 108.03MB
    1024 748988.74 104.29MB
    2048 728809.24 101.48MB
    4096 732603.27 102.01MB

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

500 Lines or Less

500 Lines or Less

Amy Brown、Michael DiBernardo / 2016-6-28 / USD 35.00

This book provides you with the chance to study how 26 experienced programmers think when they are building something new. The programs you will read about in this book were all written from scratch t......一起来看看 《500 Lines or Less》 这本书的介绍吧!

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具