Sofa Bolt Versions Save

SOFABolt is a lightweight, easy to use and high performance remoting framework based on Netty.

v1.6.8

2 weeks ago

Usage

Compatibility

  • Compatible with 1.6.7 and earlier versions

POM dependency

<!-- log uses slf4j,the log implementation can be log4j、log4j2、logback,which can be referenced:https://github.com/alipay/sofa-bolt/wiki/log_implementation_jar -->
 <dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-api</artifactId>
    <version>1.7.21</version>
</dependency>
<dependency>
    <groupId>io.netty</groupId>
    <artifactId>netty-all</artifactId>
    <version>4.1.42.Final</version>
</dependency>
<dependency>
    <groupId>com.alipay.sofa</groupId>
    <artifactId>bolt</artifactId>
    <version>1.6.8</version>
</dependency>
<dependency>
    <groupId>com.alipay.sofa.common</groupId>
    <artifactId>sofa-common-tools</artifactId>
    <version>1.0.12</version>
</dependency>

What's Changed

Enhancement

Fix

New Contributors

Full Changelog: https://github.com/sofastack/sofa-bolt/compare/v1.6.7...v1.6.8

v1.6.7

2 months ago

修改内容包括:

兼容性

  • 兼容1.6.6及之前版本

v1.6.7的pom依赖

<!-- 日志门面使用slf4j,日志实现可以选择log4j、log4j2、logback,可参考:https://github.com/alipay/sofa-bolt/wiki/log_implementation_jar -->
 <dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-api</artifactId>
    <version>1.7.21</version>
</dependency>
<dependency>
    <groupId>io.netty</groupId>
    <artifactId>netty-all</artifactId>
    <version>4.1.42.Final</version>
</dependency>
<dependency>
    <groupId>com.alipay.sofa</groupId>
    <artifactId>bolt</artifactId>
    <version>1.6.7</version>
</dependency>
<dependency>
    <groupId>com.alipay.sofa.common</groupId>
    <artifactId>sofa-common-tools</artifactId>
    <version>1.0.12</version>
</dependency>

主要改动

feature

  • [feature] (对内)git action支持版本发布

tuning

  • [tuning] HessianSerializer 懒加载
  • [tuning] async context 支持发送exception, 和 sync processor保持一致
  • [tuning] 基于协议选择commandFactory

bugfix

  • [bugfix] 修复 addConnectionEventProcessor并发访问问题
  • [bugfix] Connection.isFine方法补充close状态检查

v1.6.6

1 year ago

修改内容包括:

兼容性

  • 兼容1.6.5及之前版本

v1.6.6的pom依赖

<!-- 日志门面使用slf4j,日志实现可以选择log4j、log4j2、logback,可参考:https://github.com/alipay/sofa-bolt/wiki/log_implementation_jar -->
 <dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-api</artifactId>
    <version>1.7.21</version>
</dependency>
<dependency>
    <groupId>io.netty</groupId>
    <artifactId>netty-all</artifactId>
    <version>4.1.42.Final</version>
</dependency>
<dependency>
    <groupId>com.alipay.sofa</groupId>
    <artifactId>bolt</artifactId>
    <version>1.6.6</version>
</dependency>
<dependency>
    <groupId>com.alipay.sofa.common</groupId>
    <artifactId>sofa-common-tools</artifactId>
    <version>1.0.12</version>
</dependency>

主要改动

feature

  • [feature] 支持ipv6地址解析

tuning

  • [tuning] HessianSerializer ByteArrayOutputStream threadlocal化,减少内存重复申请

bugfix

  • [bugfix] header.length > Short.MAX_VALUE 抛异常,之前强转会导致协议解析异常

v1.6.5

1 year ago

修改内容包括:

兼容性

  • 兼容1.6.4及之前版本

v1.6.5的pom依赖

<!-- 日志门面使用slf4j,日志实现可以选择log4j、log4j2、logback,可参考:https://github.com/alipay/sofa-bolt/wiki/log_implementation_jar -->
 <dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-api</artifactId>
    <version>1.7.21</version>
</dependency>
<dependency>
    <groupId>io.netty</groupId>
    <artifactId>netty-all</artifactId>
    <version>4.1.42.Final</version>
</dependency>
<dependency>
    <groupId>com.alipay.sofa</groupId>
    <artifactId>bolt</artifactId>
    <version>1.6.5</version>
</dependency>
<dependency>
    <groupId>com.alipay.sofa.common</groupId>
    <artifactId>sofa-common-tools</artifactId>
    <version>1.0.12</version>
</dependency>

主要改动

bugfix

  • [bugfix] 连接创建失败场景触发删除全部连接情况,需同时删除连接池

v1.6.4

2 years ago

修改内容包括:

兼容性

  • 兼容1.6.3及之前版本

v1.6.4的pom依赖

<!-- 日志门面使用slf4j,日志实现可以选择log4j、log4j2、logback,可参考:https://github.com/alipay/sofa-bolt/wiki/log_implementation_jar -->
 <dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-api</artifactId>
    <version>1.7.21</version>
</dependency>
<dependency>
    <groupId>io.netty</groupId>
    <artifactId>netty-all</artifactId>
    <version>4.1.42.Final</version>
</dependency>
<dependency>
    <groupId>com.alipay.sofa</groupId>
    <artifactId>bolt</artifactId>
    <version>1.6.4</version>
</dependency>
<dependency>
    <groupId>com.alipay.sofa.common</groupId>
    <artifactId>sofa-common-tools</artifactId>
    <version>1.0.12</version>
</dependency>

主要改动

feature

  • [feature] 支持双向SSL验证
  • [feature] 支持用户拓展注入Netty的ChannelHandler
  • [feature] 支持Wireshark插件

tuning

  • [tuning] 及时返回调用结果,避免客户端设置超时未1s,实际超过1s未返回超时的情况
  • [tuning] 记录更精确的request处理链路各个阶段的耗时
  • [tuning] 使用统一的Option配置接口代替散落的Switch和ConfigManager

v1.5.9

2 years ago

兼容性

  • 兼容1.5.8及之前所有版本

v1.5.9的pom依赖

<!-- 日志门面使用slf4j,日志实现可以选择log4j、log4j2、logback,可参考:https://github.com/alipay/sofa-bolt/wiki/log_implementation_jar -->
 <dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-api</artifactId>
    <version>1.7.21</version>
</dependency>
<dependency>
    <groupId>io.netty</groupId>
    <artifactId>netty-all</artifactId>
    <version>4.1.42.Final</version>
</dependency>
<dependency>
    <groupId>com.alipay.sofa</groupId>
    <artifactId>bolt</artifactId>
    <version>1.5.9</version>
</dependency>
<dependency>
    <groupId>com.alipay.sofa.common</groupId>
    <artifactId>sofa-common-tools</artifactId>
    <version>1.0.12</version>
</dependency>

主要改动

feature

  • [feature] 支持更精准的记录请求处理各个阶段的耗时:客户端请求生成时间、请求Header解码时间、请求Body解码时间、请求进入处理队列时间等

v1.5.7

3 years ago
  • 优化 log4j2 日志配置,解决在异常场景下的性能问题

v1.6.2

3 years ago

修改内容包括:

所有MR以及issue见milestone1.6.2

兼容性

  • 兼容1.6.1版本

v1.6.2的pom依赖

<!-- 日志门面使用slf4j,日志实现可以选择log4j、log4j2、logback,可参考:https://github.com/alipay/sofa-bolt/wiki/log_implementation_jar -->
 <dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-api</artifactId>
    <version>1.7.21</version>
</dependency>
<dependency>
    <groupId>io.netty</groupId>
    <artifactId>netty-all</artifactId>
    <version>4.1.42.Final</version>
</dependency>
<dependency>
    <groupId>com.alipay.sofa</groupId>
    <artifactId>bolt</artifactId>
    <version>1.6.2</version>
</dependency>
<dependency>
    <groupId>com.alipay.sofa.common</groupId>
    <artifactId>sofa-common-tools</artifactId>
    <version>1.0.12</version>
</dependency>

主要改动

feature

  • [feature] 增加方法支持验证链接是否可用并异步创建连接
  • [feature] UserProcessor暴露方法支持用户设置ClassLoader

bugfix

  • [bugfix] 修复Url对象默认连接数为0导致不创建连接的问题https://github.com/sofastack/sofa-bolt/issues/212
  • [bugfix] 修复无可用连接的ConnectionPool无法被回收的问题https://github.com/sofastack/sofa-bolt/issues/210

v1.6.1

4 years ago

修改内容包括:

所有MR以及issue见milestone1.6.1

兼容性

  • 不兼容部分:接口 AsyncMultiUserProcessorSyncMultiUserProcessor 纠正命名错误导致不兼容。
  • 其余部分兼容1.6.0版本

v1.6.1的pom依赖

<!-- 日志门面使用slf4j,日志实现可以选择log4j、log4j2、logback,可参考:https://github.com/alipay/sofa-bolt/wiki/log_implementation_jar -->
 <dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-api</artifactId>
    <version>1.7.21</version>
</dependency>
<dependency>
    <groupId>io.netty</groupId>
    <artifactId>netty-all</artifactId>
    <version>4.1.42.Final</version>
</dependency>
<dependency>
    <groupId>com.alipay.sofa</groupId>
    <artifactId>bolt</artifactId>
    <version>1.6.1</version>
</dependency>
<dependency>
    <groupId>com.alipay.sofa.common</groupId>
    <artifactId>sofa-common-tools</artifactId>
    <version>1.0.12</version>
</dependency>

主要改动

feature

  • [feature] 新增 CONNECT_FAILED 连接事件类型并且会打印在event日志(release1.5.6分支)
  • [feature] 新增支持 flush consolidation handler的开关选项
  • [feature] RpcClientRpcServer 新增支持SSL
  • [feature] 新增支持RpcServer 监听随机端口的构造方法并支持port()方法返回该绑定端口
  • [feature] 新增支持 UserProcessor 生命周期的方法,RpcClientRpcServer会在启动和关闭时尝试启动和关闭所有的UserProcessor
  • [feature] 新增支持用户自定义SO_SND_BUFSO_RCV_BUF的配置选项,默认不设置该值。
  • [feature] 添加拒绝处理的RejectionProcessableInvokeCallback以在用户执行者拒绝任务时提供灵活的选项
  • [feature] 新增支持 flush consolidation handler的开关选项

tuning

  • [tuning] 优化了生命周期的检查,避免组件在关闭或启动前后仍然能够提供服务。
  • [tuning] 优化了DefaultConnectionManager 的构造方法以及其它的部分代码。
  • [tuning] 检查了拼写错误,纠正了接口 AsyncMultiUserProcessorSyncMultiUserProcessor 的命名以及部分注释中的拼写错误。

bugfix

  • [bugfix] 修复极端情况下重连导致的NPE问题(release1.5.6分支
  • [bugfix] 修复单元测试中的一些bug和不优雅的实现
  • [bugfix] 修复DefaultConnectionManager#check(Connection)异常信息不完整的问题
  • [bugfix] 修复AbstractLifeCycle启动/关闭的并发问题
  • [bugfix] 修复AsyncMultiUserProcessor会被当成SyncUserProcessor处理的错误

v1.5.6

4 years ago

修改内容包括:

所有MR以及issue见milestone1.5.6

兼容性

  • 兼容1.5.5版本

v1.5.6的pom依赖

<!-- 日志门面使用slf4j,日志实现可以选择log4j、log4j2、logback,可参考:https://github.com/alipay/sofa-bolt/wiki/log_implementation_jar -->
 <dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-api</artifactId>
    <version>1.7.21</version>
</dependency>
<dependency>
    <groupId>io.netty</groupId>
    <artifactId>netty-all</artifactId>
    <version>4.1.25.Final</version>
</dependency>
<dependency>
    <groupId>com.alipay.sofa</groupId>
    <artifactId>bolt</artifactId>
    <version>1.5.6</version>
</dependency>
<dependency>
    <groupId>com.alipay.sofa.common</groupId>
    <artifactId>sofa-common-tools</artifactId>
    <version>1.0.12</version>
</dependency>

主要改动

bugfix

  • [bugfix] 修复了channelInactive时可能因为Channel还未绑定到Connection导致重连功能失效的问题