laya-go-template

command module
v1.0.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 2, 2021 License: Apache-2.0 Imports: 7 Imported by: 0

README

api模板

  • github链接
  • 总的来说就是自己的习惯形成的一套开发框架,代码拉下来就可以运行,方便新api或者web项目的快速搭建 组件都是目前golang比较火的组件

启动运行

  1. clone代码
    • git clone https://github.com/LaYa-op/laya-go-template.git
  2. 修改配置conf/app.json,不需要全部改为false即可
  3. 启动
    • go run github.com/LaYa-op/laya-go-template
  4. docker方式启动
    • docker build -t laya-go-template:1.0 . && docker run --name laya-go-template -p 10080:10080 --network devops --network-alias laya-go-template laya-go-template:1.0

config

route

controller

  • 参考controller/base.go

model

  • 传统的ddd模式
  • page业务层
  • data数据层
  • dao连接或者请求层

middleware

  • 请参考gin的middleware

log

  • uber开源的zap日志github链接
  • 使用glogs.InfoF()
  • 可自己拓展

cache(go实现的memcache)

  • github链接
  • 使用data.GetMem(),data.SetMem(),data.DelMem()
  • 具体看代码models/dao/memory.go和models/data/cache.go

错误代码

  • 定义在utils/errno里面
  • 使用utils.SystemErr
  • 返回的是error类型,response里面会根据error不同而加载错误信息

utils

  • time.go是基于sql.nulltime自己实现的
  • helps是辅助工具类
  • redis_lock是实现的redis锁

未来版本规划

  • 实现一个协程池,并可选开启和关闭,让异步任务简单化
  • 配置热重载

推荐工具

数据库直接生成gorm的struct

  • github链接
  • db2struct --host localhost -d xthk_pay --package db -p 123456 --user root --guregu --gorm -t tableName --struct structName

hey 压测工具

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
Package log is a global internal logger logger: this is extend package, use https://github.com/uber-go/zap
Package log is a global internal logger logger: this is extend package, use https://github.com/uber-go/zap
models
dao
page
todo 实时统计运算改为异步处理
todo 实时统计运算改为异步处理

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL