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

  

新特性

  1. 新增并发安全的高性能任务定时器模块gtimer, 类似于Java的Timer,但是比较于Java的Timer更加强大,内部实现采用灵活高效的分层时间轮设计,被设计为可管理维护百万级别以上数量的定时任务。gtimerGF框架的核心模块之一,单元测试覆盖率达到93.6%https://goframe.org/os/gtimer/index

  2. 采用任务定时器gtimer重构gcron定时任务模块,去掉第三方github.com/robfig/cron包的使用。gcron增加单例模式的定时任务:https://goframe.org/os/gcron/index#

  3. gconv类型转换模块支持对struct结构体中的指针属性转换:https://goframe.org/util/gconv/struct

  4. gform增加对数据库类型的自动识别特性,这一特性在需要将查询结果json编码返回时非常有用: https://goframe.org/database/orm/index

  5. Travis CI增加对386架构的自动化测试支持(目前已支持386amd64);

新功能

  1. ghttp模块新增ExitExitAllExitHook方法,用于HTTP请求处理流程控制: https://goframe.org/net/ghttp/service/object

  2. grand模块增加Meet/MeetProb方法,用于给定概率的随机满足判断,增加别名方法N/Str/Digits/Letters

  3. gvalid数据/表单校验模块增加16X19X手机号的校验支持;

功能改进

  1. gform设置默认的数据库连接池CONN_MAX_LIFE参数值为30秒;

  2. 改进glist模块,提高约20%左右性能,并增加若干链表操作方法;

  3. 改进gqueue模块,提高约50左右性能,并增加模块对select语法的支持(使用Queue.C): https://goframe.org/container/gqueue/index

  4. 改进gmlock内存锁模块,并完善单元测试用例:https://goframe.org/os/gmlock/index

  5. 改进并发安全容器所有的模块,调整并发安全控制非必需参数safe...boolunsafe...bool

  6. 改进gpool对象复用模块,支持并发安全;

  7. 更新gkafka模块的第三方依赖包;

  8. 完善ghttp模块的单元测试用例;

Bug Fix

  1. 修复gmd5模块操作文件时的文件指针未关闭问题;

  2. 修复gcache缓存项过期删除失效问题;

  3. 其他修复;

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

特点

  • 模块化、松耦合设计;

  • 丰富实用的开发模块;

  • 详尽的开发文档及示例;

  • 完善的本地中文化支持;

  • 致力于项目的通用方案;

  • 更适合企业及团队使用;

  • 更多请查阅文档及源码;

安装

go get -u gitee.com/johng/gf

或者 go.mod

require gitee.com/johng/gf latest

限制

golang版本 >= 1.9.2

架构

文档

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

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

使用

package main

import (
    "gitee.com/johng/gf/g"
    "gitee.com/johng/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%开源免费。 

猜你喜欢

转载自www.oschina.net/news/103891/goframe-1-4-6-released