GoFrame v1.7.0 发布,Go 应用开发框架

栏目: 软件资讯 · 发布时间: 5年前

内容简介:新功能/改进 重构改进glog模块: 去掉日志模块所有的锁机制,改为无锁设计,执行性能更加高效 增加日志内容的异步输出特性:https://goframe.org/os/glog/async 增加日志输出内容的Json格式支持:https://goframe...

新功能/改进

  1. 重构改进glog模块:
  2. 重构改进gmap模块:
    • 增加更多数据格式支持:HashMap/ListMap/TreeMap
    • 简化类型名称,如gmap.StringInterfaceMap简化为gmap.StrAnyMap
    • 改进Map/Keys/Values方法以提高性能
    • 修改BatchSet/BatchRemove方法名为Sets/Removes
    • 新增更多功能方法支持:https://goframe.org/container/gmap/index
  3. 改进gtime时间模块:
  4. 改进gdb数据库模块:
  5. 改进gtcp通信模块:
  6. 改进gconv类型转换模块
    • 修改gconv.TimeDuration转换方法名称为gconv.Duration
    • 新增gconv.StructDeepgconv.MapDeep方法,支持递归转换
    • 详见开发文档:https://goframe.org/util/gconv/struct
  7. 改进ghttp模块:
    • 日志输出增加http/https字段:https://goframe.org/net/ghttp/logs
    • 新增ghttp.Server.SetKeepAlive设置方法,用以开启/关闭KeepAlive特性
    • 增加ghttp.Request.GetUrl方法,用以获取当前完整的URL请求地址
    • ghttp.Client客户端支持开发者自定义Transport属性,ghttp.Client.Post方法支持浏览器模式https://goframe.org/net/ghttp/client
  8. 新增gtree树形数据结构容器支持:https://goframe.org/container/gtree/index
  9. 改进gudp通信模块,具体请参考开发文档:https://goframe.org/net/gudp/index
  10. 改进gcfg配置管理模块,所有Get*方法增加默认值支持:https://goframe.org/os/gcfg/index
  11. gredis模块新增DoVar/ReceiveVar方法以便于开发者对执行结果进行灵活的数据格式转换:https://goframe.org/database/gredis/index
  12. gcache模块BatchSet/BatchRemove方法名修改为Sets/Removes
  13. 改进gjson/gparser模块,增加更多方法:https://goframe.org/encoding/gjson/index
  14. 改进gfile.MainPkgPath方法,以支持不同平台的开发环境;
  15. 改进grpool协程池模块,提高执行性能:https://goframe.org/os/grpool/index
  16. 改进TryCatch方法,当开发者不传递Catch参数时,默认抑制并忽略错误的处理
  17. 改进gmlock模块,增加TryLockFunc/TryRLockFunc方法,并且为gmlock.Mutex高级互斥锁对象增加TryLockFunc/TryRLockFunc方法
  18. 去除gvar.VarRead接口类型支持

Bug Fix

  1. 解决gdb模块与其他第三方ORM模块同时使用的冲突;
  2. 修复gcron.AddOnce方法的细节逻辑问题;
  3. 修复内部empty模块的IsEmpty方法对结构体属性的空校验错误;
  4. 修复gview模板引擎的并发安全问题;
  5. 修复ghttp.Server的SESSION初始化过期时间问题;

 

GoFrame v1.7.0 发布,Go 应用开发框架

GF(Go Frame)是一款模块化、松耦合、生产级 Go 应用开发框架。提供了常用的核心开发组件,如:缓存、日志、文件、时间、队列、数组、集合、字符串、定时器、命令行、文件锁、内存锁、对象池、连接池、数据校验、数据编码、文件监控、定时任务、数据库ORM、TCP/UDP组件、进程管理/通信、 并发安全容器等等。并提供了Web服务开发的系列核心组件,如:Router、Cookie、Session、服务注册、配置管理、模板引擎等等,支持热重启、热更新、多域名、多端口、多服务、HTTPS、Rewrite等特性。

特点

  • 模块化、松耦合设计;
  • 模块丰富,开箱即用;
  • 详尽的开发文档及示例;
  • 完善的本地中文化支持;
  • 致力于项目的通用方案;
  • 更适合企业及团队使用;
  • 更多请查阅文档及源码;

安装

go get -u github.com/gogf/gf

或者 go.mod:

require github.com/gogf/gf latest

限制

golang版本 >= 1.10

架构

GoFrame v1.7.0 发布,Go 应用开发框架

文档

开发文档:https://goframe.org

接口文档:https://godoc.org/github.com/gogf/gf

使用

package main

import (
    "github.com/gogf/gf/g"
    "github.com/gogf/gf/g/net/ghttp"
)

func main() {
    s := g.Server()
    s.BindHandler("/", func(r *ghttp.Request) {
        r.Response.Write("Hello World")
    })
    s.Run()
}

更多..

协议

GF 使用非常友好的 MIT 开源协议进行发布,永久100%开源免费。

捐赠

如果您喜欢GF,要不给开发者来杯咖啡吧! 请在捐赠时备注您的github/gitee账号名称。

感谢

GoFrame v1.7.0 发布,Go 应用开发框架

 


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

深入理解LINUX网络技术内幕

深入理解LINUX网络技术内幕

Christian Benvenuti / 夏安、闫江毓、黄景昌 / 中国电力出版社 / 2009-6 / 128.00元

Linux如此的流行正是得益于它的特性丰富及有效的网络协议栈。如果你曾经惊叹于Linux能够实现如此复杂的工作,或者你只是想通过现实中的例子学习现代网络,《深入理解Linux网络内幕》将会给你指导。同其他O'Reilly的流行书籍一样,《深入理解Linux网络内幕》清楚地阐述了网络的基本概念,并指导你如何用C语言实现。虽然早先的 TCP/IP经验是有用的,但初学者通过《深入理解Linux网络内幕》......一起来看看 《深入理解LINUX网络技术内幕》 这本书的介绍吧!

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具