请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册
搜索

本文来自

边缘计算专区

边缘计算专区

人已关注

请添加对本版块的简短描述

精选帖子

阿里云CDN计费
阿里云CDN计费
0阅读|170人阅读
信用卡空当接龙
信用卡空当接龙
0阅读|284人阅读
HTTP/1.0和HTTP/1.1、HTTP/2请求对比
HTTP/1.0和HTTP/1.1、HTTP/2请求对比
3阅读|665人阅读
Kubernetes 多集群管理平台 Wayne
Kubernetes 多集群管理平台 Wayne
0阅读|698人阅读

GoFrame

[复制链接]
900 abc 发表于 2019-6-10 17:28:11
新功能/改进
重构改进glog模块:
去掉日志模块所有的锁机制,改为无锁设计,执行性能更加高效
增加日志内容的异步输出特性:https://goframe.org/os/glog/async
增加日志输出内容的Json格式支持:https://goframe.org/os/glog/json
增加Flags额外特性支持,包括文件行号打印、自定义时间格式、异步输出等特性控制:https://goframe.org/os/glog/flags
增加Writer接口支持,便于开发者进行自定义的日志功能扩展,或者与第三方服务/模块对接集成:https://goframe.org/os/glog/writer
修改SetStdPrint方法名为SetStdoutPrint
修改链式方法StdPrint方法名为Stdout
标记淘汰*fln日志输出方法,*f方法支持自动的换行输出
新增更多的链式方法支持:https://goframe.org/os/glog/chain
重构改进gmap模块:
增加更多数据格式支持:HashMap/ListMap/TreeMap
简化类型名称,如gmap.StringInterfaceMap简化为gmap.StrAnyMap
改进Map/Keys/Values方法以提高性能
修改BatchSet/BatchRemove方法名为Sets/Removes
新增更多功能方法支持:https://goframe.org/container/gmap/index
改进gtime时间模块:
增加并完善更多的类PHP时间格式支持
新增更多功能方法,如FormatTo/LayoutTo等等
详见开发文档:https://goframe.org/os/gtime/index
改进gdb数据库模块:
增加对继承结构体的数据转换支持:https://goframe.org/database/gdb/senior
新增GetLastSql方法,用以在调试模式下获取最近一条执行的SQL语句
其他的细节处理改进
改进gtcp通信模块:
完善处理细节,提高通信性能;
增加TLS服务端/客户端通信支持:https://goframe.org/net/gtcp/tls
增加简单协议支持,便于开发者封包/解包,并解决粘包/半包问题:https://goframe.org/net/gtcp/conn/pkg
TCP服务端增加Close方法
更多细节查看开发文档:https://goframe.org/net/gtcp/index
改进gconv类型转换模块
修改gconv.TimeDuration转换方法名称为gconv.Duration
新增gconv.StructDeep及gconv.MapDeep方法,支持递归转换
详见开发文档:https://goframe.org/util/gconv/struct
改进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
新增gtree树形数据结构容器支持:https://goframe.org/container/gtree/index
改进gudp通信模块,具体请参考开发文档:https://goframe.org/net/gudp/index
改进gcfg配置管理模块,所有Get*方法增加默认值支持:https://goframe.org/os/gcfg/index
gredis模块新增DoVar/ReceiveVar方法以便于开发者对执行结果进行灵活的数据格式转换:https://goframe.org/database/gredis/index
gcache模块BatchSet/BatchRemove方法名修改为Sets/Removes
改进gjson/gparser模块,增加更多方法:https://goframe.org/encoding/gjson/index
改进gfile.MainPkgPath方法,以支持不同平台的开发环境;
改进grpool协程池模块,提高执行性能:https://goframe.org/os/grpool/index
改进TryCatch方法,当开发者不传递Catch参数时,默认抑制并忽略错误的处理
改进gmlock模块,增加TryLockFunc/TryRLockFunc方法,并且为gmlock.Mutex高级互斥锁对象增加TryLockFunc/TryRLockFunc方法
去除gvar.VarRead接口类型支持
Bug Fix
解决gdb模块与其他第三方ORM模块同时使用的冲突;
修复gcron.AddOnce方法的细节逻辑问题;
修复内部empty模块的IsEmpty方法对结构体属性的空校验错误;
修复gview模板引擎的并发安全问题;
修复ghttp.Server的SESSION初始化过期时间问题;




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
架构


文档
开发文档: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%开源免费。

https://github.com/gogf/gf
https://github.com/gogf/gf-home


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表