Socket.D 开源网络应用协议,v2.5.9 发布(已有 java, py, js SDK)

Socket.D 协议?

Socket.D 是一个基于事件和语义消息流的网络应用协议。在微服务、移动应用、物联网等场景,可替代 http、websocket 等。协议详情参考《官网介绍》

  • 支持: tcp, udp, ws, kcp 传输。

  • 目前:java,kotlin,javascript,node.js,python,android 语言环境可用。go,rust,c/c++,.net 正在开发中。

最近更新

(1) for Java
  • 添加 静态 spi 加载方式(避免某些打包方案让 java spi 失效)
  • 添加 新的每秒帧流量控制接口 TrafficLimiter
  • 添加 Listener:onReply, onSend 方法,方便帧流量统计
  • 添加 FrameIoHandler 接口,强化 Processor 的帧输入输出强控地位
  • 添加 SessionUtils 工具类
  • 添加 Session::isActive()
  • 添加 java-websocket 适配子协议验证(避免乱连)
  • 添加 spring-websocket 适配子协议验证(避免乱连)
  • 添加 BroadcastBroker 接口(提供类似 stomp 的体验)
  • 添加 LoadBalancer:isActive 接口
  • 添加 内存占比限制支持
  • 添加 EntityMetas.META_X_UNLIMITED
  • 添加 EntityMetas.META_X_HASH, 另 META_X_Hash 标为弃用
  • 添加 Session::attrDel 接口
  • 添加 ListenerWrapper 类,方便应用定制
  • 优化 java-websocket 适配,增加 header 转移
  • 优化 spring-websocket 适配,增加 header 转移
  • 优化 java-websocket 适配,增加 setReuseAddr(true) 配置
  • 修复 server.stop 后不能自动退出的进程问题
  • 修复 session.close() 后不能自动退出的进程问题
  • smartsocket 升为 1.5.46
(2) for Python
  • 优化 Session::send_alarm 申明,支持 alarm: str|Entity
  • 添加 Listener:onReply, onSend 方法,方便帧流量统计
  • 添加 FrameIoHandler 接口,强化 Processor 的帧输入输出强控地位
  • 添加 SessionUtils 工具类
  • 添加 Session::isActive()
  • 添加 BroadcastBroker 接口(提供类似 stomp 的体验)
  • 添加 websocket 适配子协议验证(避免乱连)
  • 添加 EntityMetas.META_X_UNLIMITED
  • 优化 流的超时处理
  • 调整 语言版本需求改为 3.10
  • 修复 stream.on_reply 非异步调用出错的问题
(3) for JavaScript
  • 添加 Listener:onReply, onSend 方法,方便帧流量统计
  • 添加 FrameIoHandler 接口,强化 Processor 的帧输入输出强控地位
  • 添加 SessionUtils 工具类
  • 添加 Session::isActive()
  • 添加 BroadcastBroker 接口(提供类似 stomp 的体验)
  • 添加 websocket 适配子协议验证(避免乱连)
  • 添加 EntityMetas.META_X_UNLIMITED
  • 添加 提供者手动注册接口
  • 调整 代码结构与 java,python 尽量保持相近
  • 优化 SocketD.newEntity 与小程序的兼容性(小程不支持 File、Blob 类型)
  • 修复 wechat 的环境识别问题
  • 修复 在 ios/android 上检测 TextEncoder 出错的问题(2.3.10 出现的)

视频演示效果:

代码仓库:

官网:

相关推荐
RadiumAg34 分钟前
记一道有趣的面试题
前端·javascript
yangzhi_emo39 分钟前
ES6笔记2
开发语言·前端·javascript
界面开发小八哥1 小时前
「Java EE开发指南」如何用MyEclipse创建一个WEB项目?(三)
java·ide·java-ee·myeclipse
yanlele1 小时前
我用爬虫抓取了 25 年 5 月掘金热门面试文章
前端·javascript·面试
idolyXyz1 小时前
[java: Cleaner]-一文述之
java
一碗谦谦粉1 小时前
Maven 依赖调解的两大原则
java·maven
netyeaxi2 小时前
Java:使用spring-boot + mybatis如何打印SQL日志?
java·spring·mybatis
收破烂的小熊猫~2 小时前
《Java修仙传:从凡胎到码帝》第四章:设计模式破万法
java·开发语言·设计模式
猴哥源码2 小时前
基于Java+SpringBoot的动物领养平台
java·spring boot
老任与码2 小时前
Spring AI Alibaba(1)——基本使用
java·人工智能·后端·springaialibaba