支持GoFrame
来源:GoFrame
浏览 10
扫码
分享
2024-12-08 23:00:28
新特性
- 新增并发安全的高性能任务定时器模块
gtimer
, 类似于Java的 Timer
,但是比较于Java的 Timer
更加强大,内部实现采用灵活高效的 分层时间轮
设计,被设计为可管理维护百万级别以上数量的定时任务。 gtimer
为 GoFrame
框架的核心模块之一,单元测试覆盖率达到 93.6%
: https://goframe.org/os/gtimer/index - 采用任务定时器
gtimer
重构 gcron
定时任务模块,去掉第三方 github.com/robfig/cron
包的使用。 gcron
增加单例模式的定时任务: https://goframe.org/os/gcron/index#; gconv
类型转换模块支持对 struct
结构体中的 指针属性 转换: https://goframe.org/util/gconv/struct;gform
增加对数据库类型的自动识别特性,这一特性在需要将查询结果 json
编码返回时非常有用: https://goframe.org/database/orm/indexTravis CI
增加对 386
架构的自动化测试支持(目前已支持 386
和 amd64
);
新功能
ghttp
模块新增 Exit
、 ExitAll
、 ExitHook
方法,用于HTTP请求处理流程控制: https://goframe.org/net/ghttp/service/object;grand
模块增加 Meet/MeetProb
方法,用于给定概率的随机满足判断,增加别名方法 N/Str/Digits/Letters
;gvalid
数据/表单校验模块增加 16X
及 19X
手机号的校验支持;
功能改进
gform
设置默认的数据库连接池 CONN_MAX_LIFE
参数值为 30
秒;- 改进
glist
模块,提高约 20%
左右性能,并增加若干链表操作方法; - 改进
gqueue
模块,提高约 50
左右性能,并增加模块对 select
语法的支持(使用 Queue.C
): https://goframe.org/container/gqueue/index; - 改进
gmlock
内存锁模块,并完善单元测试用例: https://goframe.org/os/gmlock/index; - 改进并发安全容器所有的模块,调整并发安全控制非必需参数
safe...bool
为 unsafe...bool
; - 改进
gpool
对象复用模块,支持并发安全; - 更新
gkafka
模块的第三方依赖包; - 完善
ghttp
模块的单元测试用例;
Bug Fix
- 修复
gmd5
模块操作文件时的文件指针未关闭问题; - 修复
gcache
缓存项过期删除失效问题; - 其他修复;