4月24号软件更新资讯合集.....

GoFrame v2.4 版本发布,企业级 Golang 开发框架

大家好啊,GoFrame 框架今天发布了 v2.4.0 正式版本啦!👏👏👏👏

该版本最大的亮点在于提供了微服务开发的功能特性、开发工具以及工程脚手架,并且提供了完善的微服务开发文档!!微服务的组件设计仍然以接口设计为主,以保证良好的灵活性和扩展性,接口维护在框架主库中;具体的接口实现仍然以务实为主,并在社区组件中提供了常用的接口实现。

其实该版本特性功能早已 Ready,但由于文档工作量较大,陆续花了 1 个月左右才相对完善,因此版本的发布时间也相应做了调整。我们认为文档和代码同等重要,是发布里程碑不可分割的部分。我们知道怎么用好,也希望能告诉大家怎么用好,才能更务实地帮助到更多的开发者。这也是 GoFrame 框架的文档能够逐步沉淀丰富的原因之一。此外,详尽的源码注释依旧英文为主,以帮助到海外使用者。官网文档仍然以中文为主,帮助到主要的大中国区开发团队。

赶快来看看我们都更新了什么东西吧!Enjoy!🍺🍺🍺🍺🍺🍺🍺🍺

完整代码变更: v2.3.0...v2.4.0

新特性

正式发布微服务开发特性,并新增完整的微服务开发官网章节:微服务开发

功能改进

数据库组件

  1. gdb

  2. 修复跨库操作时自动查询表结构失败的问题:

  3. 修复 Namespace 配置在 pgsql 下未生效的问题。

  4. 修复使用新版统一配置,无法打开 sqlite 数据库文件的问题:

  5. 改进底层数据库操作返回逻辑,将底层错误通过 gerror.Wrap 后返回,以保证上层能获取底层自定义错误对象。

  6. 修复查询数据表时,底层 unsigned 整形字段转换为了 signed 整形类型的问题:

  7. 修复子查询时,多层 Model 作为子查询参数的解析问题:

  8. 改进时间维护功能,写入 / 更新 / 删除时间支持完整的时间(粒度到纳秒)写入。

  9. 修复在软删除场景下,给定空 Where 条件的未限制执行问题:

  10. gredis

  11. 修复对象创建时的配置处理及对象初始化问题。

容器组件

  1. garray

  2. 增加 Filter 方法,用于自定义遍历并过滤数组元素项。

  3. 增加 RemoveValues 方法,支持按照参数值批量删除元素项。

  4. 改进 InsertBefore 方法,支持批量的参数插入能力。

  5. gmap

  6. 增加 IsSubOf 方法,用于判断当前 map 是否是指定 map 的子集。

  7. gqueue

  8. 修复 Len/Size 长度计算问题:

  9. 修复 Close 方法的并发安全问题:

网络组件

  1. gclient

  2. 增加 SetDiscovery 及 SetBuilder 方法,允许调用者自定义客户端的服务发现及负载均衡接口实现。

  3. ghttp

  4. 改进支持参数接收时从 Header/Cookie 中读取指定参数,支持规范路由中的 in 标签定义读取 Header/Cookie(in:header/cookie)。

  5. 改进 ResponseWriter 实现 http.Flusher 接口,简化使用者的 Stream 输出开发逻辑:数据返回 - Stream 返回

  6. 改进链路跟踪实现逻辑,避免内部读取提交内容发生错误时被忽略的问题。

  7. 改进参数读取逻辑,避免 r.GetRequestMap() 返回内容包含 form-data 表单 body 信息的问题:

  8. 改进内部上下文接收逻辑:

  9. 原有逻辑:去掉忽略底层 Request 的 ctx 并新建支持链路跟踪的 ctx

  10. 最新逻辑:继承底层 Request 的 ctx 对象,并扩展该 ctx 支持链路跟踪特性

  11. 改进优雅关闭进程逻辑,允许自定义优雅关闭的超时时间。

  12. 改进配置功能,允许开发者配置

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值