链氪巴士
  1. 首页
  2. 站点导航
  3. 文章
  4. 快讯
  5. 软件
  6. 书刊
  7. 关于

qit-team/snow:简洁易用的Go业务框架

qit - team/snow是一个简洁易用的Go业务框架,支持HTTP服务、队列调度、任务调度和脚本任务等业务场景。其设计目的是让PHPer能更方便地切入Go开发,贴合PHP主流框架思想以降低学习成本。HTTP服务基于gin,任务调度基于cron,队列调度有自研服务。还有通用的...

访问官网 →

【Github】项目名:qit – team/snow:简洁易用的Go业务框架

项目简介

Snow是一套用Go语言编写的业务框架,它整体逻辑设计简洁,支持如HTTP服务、队列调度、任务调度和脚本任务等多种常用业务场景模式。该框架有着诸多特点,如HTTP服务基于gin模块化设计且轻量易用还支持平滑重启;任务调度基于cron模块化设计;队列调度基于自研高性能服务且接口通用可解耦等。

项目目的

致力于让PHPer更方便地切入到Go语言开发,在业务框架选择上贴合PHP主流框架的设计思想,以降低学习成本,从而让开发者能快速熟悉框架并专注于业务逻辑的开发。

核心技术

  • HTTP服务:基于gin进行模块化设计,具备简单易用、核心轻量的特性,并且支持平滑重启。
  • 任务调度:基于cron进行模块化设计,易于使用。
  • 队列调度:基于自研的高性能队列调度服务worker,通过通用的Queue接口化,解耦队列调度与底层队列驱动,支持平滑关闭。
  • Cache:采用通用的缓存接口化设计,核心组件实现了插件式的redis驱动支持,具备可扩展性。
  • Database:使用成熟的ORM库,有丰富的数据库驱动支持和特性。
  • Queue:通用的接口化设计,框架实现了redis、alimns作为队列底层驱动,支持可扩展。
  • Config:采用toml语义化的配置文件格式,简单易用。
  • Logger:基于logrus进行封装,内嵌上下文通用数据采集和trace_id追踪。
  • Request and Response:定义输入和输出数据实体格式。
  • Curl:简单易用的Curl请求库。
  • 脚手架:方便快捷的创建新项目,可一键升级。

项目总结

qit – team/snow是一个功能丰富且设计简洁的Go业务框架,无论是从对PHPer转向Go开发的支持,还是框架自身的多种功能特性方面都表现出色。欢迎大家在评论区留言分享对这个项目的看法或者提出问题。

项目地址

GitHub链接直达