V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
The Go Programming Language
http://golang.org/
Go Playground
Go Projects
Revel Web Framework
wilee
V2EX  ›  Go 编程语言

Snow——简单易用的 Go 语言业务框架

  •  
  •   wilee · 2019-07-08 19:30:14 +08:00 · 2764 次点击
    这是一个创建于 1746 天前的主题,其中的信息可能已经有所发展或是发生改变。

    Snow

    Snow 是一套简单易用的 Go 语言业务框架,整体逻辑设计简洁,支持 HTTP 服务、队列调度和任务调度等常用业务场景模式。

    Goals

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

    Features

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

    Quick start

    Requirements

    Go version>=1.12

    Installation

    cd $GOPATH/src
    cd my-github/my-space
    git clone [email protected]/qit-team/snow.git my-project
    cd my-project
    sh build/shell/replace.sh my-github/my-space/my-project
    

    Build & Run

    sh build/shell/build.sh
    build/bin/snow
    

    Test demo

    curl "http://127.0.0.1:8000/hello"  #返回 json 串输出
    

    Documents

    2 条回复    2019-07-09 14:18:40 +08:00
    zhangtao
        1
    zhangtao  
       2019-07-08 19:39:47 +08:00
    如果要在企业生产环境落地使用的话,建议加入一些基本的微服务治理的模块
    hetiansu5
        2
    hetiansu5  
       2019-07-09 14:18:40 +08:00
    @zhangtao 嗯嗯,很棒的建议~
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2990 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 11:07 · PVG 19:07 · LAX 04:07 · JFK 07:07
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.