Releases: kercylan98/minotaur
Releases · kercylan98/minotaur
v0.2.2
v0.2.1
0.2.1 (2023-09-19)
Other | 其他更改
- gateway 优化代码逻辑,适配 client.Client 变更 (0cc8fd8)
Features | 新特性
- buffer.Unbounded 增加新的构造函数,支持省略 generateNil 函数,新增 IsClosed 函数检查无界缓冲区是否已经关闭 (e9bc9fb)
- concurrent.Pool 新增静默模式可选项 WithPoolSilent,在该模式下当缓冲区大小不足时,将不再输出警告日志 (3ad1330)
- random 包通过权重和概率随机产生一个成员支持返回产生成员的索引或 Key (782a1ad)
- 新增 writeloop 包,内置了一个写循环的实现 (dd1acfd)
Bug Fixes | 修复
- super 包优化 GetError 函数的空指针问题 (ab3926e)
Docs | 文档优化
- 修复 server 在 WebSocket 模式下超时时间无效的问题 (1bc32e2)
Styling | 可读性优化
- server 包为服务器启动添加 IP 信息,死锁检测的日志内容优化 (42465a8)
Code Refactoring | 重构
- client 包采用无界缓冲区替代通过 chan 实现的写通道,移除消息堆积功能,优化代码逻辑 (2d9ffad)
- server 移除 WithConnMessageChannelSize 可选项 (31c0e1b)
Performance Improvements | 性能优化
- server.Conn 写循环更改为采用无界缓冲区的写入,优化整体逻辑 (551a3e5)
v0.2.0
0.2.0 (2023-09-18)
Features | 新特性
- buffer 包新增 Unbounded 实现 (d56c1df)
- random 包新增 ProbabilitySlice 函数,用于基于概率产生一个结果,当概率总和小于 1 会发生未命中的情况,概率总和大于 1 将等比缩放至 1 (7c9bc46)
- 新增 buffer 包,内置了一个环形缓冲区的实现 (12d1aba)
Bug Fixes | 修复
Docs | 文档优化
- 优化文档内容兼容 WithShunt (00eaa36)
Code Refactoring | 重构
- server 包重构消息通道,采用无界缓冲区替代原本的 chan,解决消息通道的缓冲区达到上限时造成永久阻塞的问题,移除 WithMessageChannelSize 可选项,修改 WithShunt 可选项不再需要 channelGenerator 参数 (810a9fd)
v0.1.7
0.1.7 (2023-09-12)
Features | 新特性
- router 包新增 Multistage 多级分类路由器,用于替代原有的 1~3 级路由器 (10cc443)
- router.Multistage 支持通过可选项创建 (637ae27)
- server 包新增 WithLimitLift 和 WithConnectionMessageChannelSize 函数,用于限制服务器最大生命周期及连接的消息写入通道大小 (064d434)
- slice.Priority 优先级队列新增 Slice 函数,获取队列成员为切片类型 (30dbb14)
- utils 下新增 sorts.Topological 拓扑排序函数 (7a5e2c1)
Bug Fixes | 修复
- 修复 super.RegError 和 RegErrorRef 空指针问题 (82973dd)
Docs | 文档优化
Performance Improvements | 性能优化
- server 包 websocket SetReadDeadline 优化 (dc3c7d2)
Tests | 新增或优化测试用例
- slice 包新增部分单元测试 (4982e6d)
v0.1.6
v0.1.5
0.1.5 (2023-09-08)
Features | 新特性
- slice 包新增 Zoom 函数, stream 包支持 Zoom 函数 (62ef35a)
- stream.Slice 新增 Indexes 和 Map 函数 (5024022)
- survey 分析记录支持通过 GetTime 函数获取记录时间 (3c3dc83)
- 优化 slice 包 Filter 和 Map 函数,新增 Reduce 函数 (5ab9902)
- 新增大量 slice 包和 hash 包的辅助函数 (d772409)
Bug Fixes | 修复
- server 修复消息计数始终为1的问题 (6c882ed)
- 修复 server 关闭服务器后,如果等待消息结束过程中,新消息将阻塞的问题 (19df61b)
- 修复 survey.Analyzer 去重 BUG (a4ba3f1)
Styling | 可读性优化
- 常量调整为从 1 开始 (5fb1dcb)
Code Refactoring | 重构
Performance Improvements | 性能优化
- server 包连接关闭逻辑优化 (483ace2)
Tests | 新增或优化测试用例
- 新增 stream.Slice 测试用例 (d9b68fc)
v0.1.4
0.1.4 (2023-09-06)
Features | 新特性
Bug Fixes | 修复
- client 包错误类型转换错误问题处理 (034ca17)
- 修复 server 包 Server.RegConsoleCommandEvent 函数在无终端环境下导致 CPU 飙升的问题 (3e35e73)
Docs | 文档优化
- README.md 增加部分示例 (e5bf7f3)
Code Refactoring | 重构
- survey 包 AllWithPath 函数更改为 Analyze,新增分析报告,及分析器,提供方便的统计功能 (ac11e9e)
Performance Improvements | 性能优化
- 优化 concurrent.Pool 池对象不够用的日志打印为 1 秒一次,而不是频繁打印 (989b9da)
Tests | 新增或优化测试用例
- 优化 server 服务器并发测试用例 (4214ea4)
v0.1.3
v0.1.2
0.1.2 (2023-09-01)
Features | 新特性
- counter 包增加简单去重计数器 (0d76507)
- gateway 支持连接与某一端点保持持久通讯,支持将端点的所有连接切换到另一端点 (6d5aa59)
- gateway 新增 WithEndpointConnectionPoolSize 支持配置与端点建立连接的数量 (3ca6ed0)
- super 包新增函数 IsNumber,用于判断一个值是否为数字类型 (518d47a)
Bug Fixes | 修复
- server 包中 RegConsoleCommandEvent 函数空指针问题处理 (2ed52fc)
- server 包修复服务器关闭后发送消息引起的空指针问题 (3062428)
- survey 包修复 All 函数无用的返回参 (c6f8c19)
- 修复 server 中 HTTP 服务器关闭时会引发空指针的问题 (8cd9979)
Code Refactoring | 重构
- 优化 survey,移除 All 函数,新增 Flusher 接口,可自行实现其他持久化方式 (d9ba1bc)
Performance Improvements | 性能优化
- 提高消息吞吐量,降低消息延迟 (1cbe8ec)