Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

GF(Go Frame)是一款模块化、高性能、生产级的Go基础开发框架。实现了比较完善的基础设施建设以及开发工具链,提供了常用的基础开发模块,如:缓存、日志、队列、数组、集合、容器、定时器、命令行、内存锁、对象池、配置管理、资源管理、数据校验、数据编码、定时任务、数据库ORM、TCP/UDP组件、进程管理/通信等等。并提供了Web服务开发的系列核心组件,如:Router、Cookie、Session、Middleware、服务注册、模板引擎等等,支持热重启、热更新、域名绑定、TLS/HTTPS、Rewrite等特性。

如果您初识Go语言,您可以将GoFrame类似于PHP中的Laravel, Java中的SpringBoot或者Python中的Django

特点

GoFrame是一款模块化、高性能、企业级的Go基础开发框架。GoFrame是一款通用性的基础开发框架,是Golang标准库的一个增强扩展级,包含通用核心的基础开发组件,优点是实战化、模块化、文档全面、模块丰富、易用性高、通用性强、面向团队。GoFrame既可用于开发完整的工程化项目,由于框架基础采用模块化解耦设计,因此也可以作为工具库使用。

如果您想使用Golang开发一个业务型项目,无论是小型还是中大型项目,GoFrame是您的不二之选。如果您想开发一个Golang组件库,GoFrame提供开箱即用、丰富强大的基础组件库也能助您的工作事半功倍。如果您是团队LeaderGoFrame丰富的资料文档、详尽的代码注释、活跃的社区成员将会极大降低您的指导成本,支持团队快速接入、语言转型与能力提升。

特点

  • 业内领先、工程完备
  • 模块化、松耦合设计
  • 组件丰富、开箱即用
  • 简洁易用、文档详尽
  • 接口化、高扩展性设计
  • 全链路跟踪特性
  • 全错误堆栈特性
  • 接口化的错误码支持
  • 稳健的工程设计规范
  • 更便捷强大的ORM组件
  • 便捷的开发工具、自动化代码生成
  • 支持OpenTelemetry可观测性标准
  • 自动化的接口文档生成,支持OpenAPIV3标准
  • 完善的本地中文化支持
  • 设计为团队及企业使用
  • 模块化、松耦合设计;
  • 模块丰富、开箱即用;
  • 简便易用、易于维护;
  • 高代码质量、高单元测试覆盖率;
  • 社区活跃,大牛谦逊低调脾气好;
  • 详尽的开发文档及示例;
  • 完善的本地中文化支持;
  • 设计为团队及企业使用;

地址

安装

Code Block
languagexml
go get -u -v github.com/gogf/gf/v2

推荐使用 go.mod:

Code Block
languagexml
require github.com/gogf/gf/v2 latest

限制

Code Block
languagexml
golang版本 >= 1.

...

18

架构

Image Removed

模块

  1. 核心模块

    GoFrame提供了一些基础的、常用的模块,简单、易用和轻量级,并保持极少的外部依赖,这些模块由gf主仓库细致维护。

  2. 社区模块

    社区模块主要由社区贡献并维护,大部分也是由gf主仓库的贡献者提供及维护,存放于gogf空间下,与gf主仓库处于同一级别。有的社区模块是从gf主仓库中剥离出来单独维护的模块,这些模块并不是特别常用,或者对外部依赖较重。

性能

...


文档

...

环境:

OS   : Ubuntu 18.04 amd64
CPU  : AMD A8-6600K x 4
MEM  : 32GB
GO   : v1.13.4

工具

ab: Apache HTTP server benchmarking tool.

测试命令:

ab -t 10 -c 100 http://127.0.0.1:3000/hello
ab -t 10 -c 100 http://127.0.0.1:3000/query?id=10000
ab -t 10 -c 100 http://127.0.0.1:3000/json

并发客户端数量从 100 递增到 10000

每个项目的每个用例均运行5次,取最优的结果展示。

1. Hello World

...

Image Removed

...

Image Removed

...

Image Removed

帮助

  • 扣扣交流群:扫描或群号搜索添加

    GoFrame实战1群

    GoFrame实战2群GoFrame实战3群

    已满

    已满

    Image Added

    点击链接加入群聊【GoFrame实战3群】:https://qm.qq.com/q/K7UMKSrVq8


  • 微信交流群:扫描或微信添加389961817备注GF加群

    添加后拉群

    Image Added


  • 微信公众号:关注GoFrame的发展动态

Image Added

2. Json Response

...

Image Removed

...

Image Removed

...

Image Removed

帮助

建议通过阅读GoFrame的源码以及API文档深度学习GoFrame,了解更多的精妙设计。

协议

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

用户

在这里只列举了部分知名的用户,如果您的企业或者产品正在使用GoFrame,欢迎到 这里 留言。

贡献

感谢所有参与GoFrame开发的贡献者。 [贡献者列表].

Image RemovedImage Added

捐赠

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

赞助

赞助支持GFGoFrame框架的快速研发,如果您感兴趣,请联系 微信 389961817 / 邮件 john@goframe.org

感谢

 Image Removed Image Added