[TOC]- [关于我](#关于我)
- [关于我](#关于我)
- [echoframe](#ginframe)
- [简介](#简介)
- [目录结构](#目录结构)
- [安装](#安装)
- [目的及优势](#目的及优势)
- [职责](#职责)
- [1. 文件配置](#文件配置)
- [2. api路由](#api路由)
- [3. rpc](#rpc)
- [4. websocket路由](#websocket路由)
- [5. api返回统一格式](#api返回统一格式)
- [6. gorm](#gorm)
- [7. redis](#redis)
- [8. Mongo](#Mongo)
- [9. uber.zap.log](#uber.zap.log)
- [10. GOMAXPROCS](#GOMAXPROCS)
- [11. httprequest](#httprequest)
- [12. leveldb](#leveldb)
- [13. ElasticSearch](#ElasticSearch)
- [14. AES](#AES)
- [15. 加密](#加密)
- [16. 动态搜索+分页](#动态搜索+分页)
- [17. map合并和并发安全map](#map合并和并发安全map)
- [18. 时间处理工具类](#时间处理工具类)
- [19. 敏感词识别](#敏感词识别)
- [20. 邮件类工具](#邮件类工具)
- [21. kafka生产者、消费者](#kafka生产者、消费者)
- [22. etcd客户端连接初始化 (写入、读取、修改、删除)](#etcd客户端连接初始化 (写入、读取、修改、删除))
- [23. jwt](#jwt)
- [24. 登录签发token](#登录签发token)
- [25. token校验中间件](#token校验中间件)
- [26. 账号登录状态是否被禁用校验中间件](#账号登录状态是否被禁用校验中间件)
- [27. 常用正则表达式](#常用正则表达式)
- [28. 数组切片去重](#数组切片去重)
# 关于我
执着于理想,纯粹与当下...
# ginframe
基于Go语言gin框架搭建的可快速开发的微服务脚手架
## 简介
基于gin框架,搭建一个快速开发的脚手架。
## 目录结构
```markdown
server-common -- 服务公共模块
config -- 解析配置方法
const -- 全局常量
driver -- 全局驱动
nacosRF -- 全局nacos配置
pkg -- 全局公共包
gorm
httprequest
jwt
leveldb
mongo
redis
uber
viper
wetcd
wkafka
process -- cpu核心
servers -- gprc 服务发现
utils -- 全局工具类
email -- 发送邮件
encry -- 加密
enum -- api统一分装返回
ip -- ip工具
maps -- map工具
orm -- gorm动态搜索、分页
regmatch -- 正则匹配
slice -- 切片操作
wordsfilter -- 敏感词过滤
wtime -- 时间处理
server-user -- 用户服务
boot -- 启动目录
db.go
grpc.go
http.go
init.go
log.go
ws.go
cachedb -- 缓存操作
core -- 核心目录
db.go
daos -- daos
global -- user服务全局配置
grpcservices -- grpc services
handler -- 控制器
input -- 入参
middlewares -- 中间件
models -- 模型
out -- 出参映射
pb -- protobuf生成的文件目录
proto -- protobuf文件目录
router -- 路由
api.go
ws.go
rpc -- rpc
scripts -- 脚本
service -- 服务层
ulogger -- 服务日志
ws -- websocket
main.go -- 入口文件
server-test -- 测试服务
...... -- 其他服务
.gitignore
go.mod -- mod包管理文件
LICENSE
README.md
```
## 安装
安装完之后名字ginframe可改,可根据自己的需求精简或者添加架子结构。也可直接使用
```shell
git clone https://github.com/jeffcail/ginframe.git
cd ginframe
make env
make mod
```
## 目的及优势
* 快速上手、快速开发、快速交付
* 高性能、高扩展,避免重复造轮子
## 职责
快速开发、避免重复造轮子
### 文件配置
application.yml为主配置文件.ConfigRemote觉得是否启用远程配置,支持Nacos.
config.yml 为应用配置
### api路由
http路由
### rpc
### websocket路由
websocket路由
### api返回统一格式
成功、失败、分页
### gorm
### redis
### Mongo
### uber.zap.log
### GOMAXPROCS
### httprequest
http请求. GET、POST带header头和参数
### leveldb
### ElasticSearch
### AES
可用于api接口参数加密
### 加密
md5加密 、sha256加密 、sha512加密 、文件md5加密 、 (密码+盐)hash加密(可以用于加密登录密码).
### 动态搜索+分页
### map合并和并发安全map
### 时间处理工具类
### 邮件类工具
### kafka生产者、消费者
### etcd客户端连接初始化 (写入、读取、修改、删除)
### jwt
### 登录签发token
### token校验中间件
### 账号登录状态是否被禁用校验中间件
### 常用正则表达式
1. 手机号
2. 座机号
3. 18位身份证号
4. 护照编号
5. 港澳通行证
6. IP地址(ipv4)
7. IPV6
8. MAC地址
9. 电子邮箱
10. 统一社会信用代码
11. 密码
12. 网址URL 带端口号
13. 网址URL 不带端口号
14. 金额
### 数组切片去重
没有合适的资源?快使用搜索试试~ 我知道了~
基于Go语言gin框架搭建的可快速开发的微服务脚手架.zip
共102个文件
go:81个
sh:6个
yml:3个
需积分: 5 0 下载量 158 浏览量
2024-05-23
17:16:33
上传
评论
收藏 115KB ZIP 举报
温馨提示
Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高性能的服务器和分布式系统。以下是Go语言的一些主要特点和优势: 简洁性:Go语言的语法简单直观,易于学习和使用。它避免了复杂的语法特性,如继承、重载等,转而采用组合和接口来实现代码的复用和扩展。 高性能:Go语言具有出色的性能,可以媲美C和C++。它使用静态类型系统和编译型语言的优势,能够生成高效的机器码。 并发性:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高性能的服务器和分布式系统时具有天然的优势。 安全性:Go语言具有强大的类型系统和内存管理机制,能够减少运行时错误和内存泄漏等问题。它还支持编译时检查,可以在编译阶段就发现潜在的问题。 标准库:Go语言的标准库非常丰富,包含了大量的实用功能和工具,如网络编程、文件操作、加密解密等。这使得开发者可以更加专注于业务逻辑的实现,而无需花费太多时间在底层功能的实现上。 跨平台:Go语言支持多种操作系统和平台,包括Windows、Linux、macOS等。它使用统一的构建系统(如Go Modules),可以轻松地跨平台编译和运行代码。 开源和社区支持:Go语言是开源的,具有庞大的社区支持和丰富的资源。开发者可以通过社区获取帮助、分享经验和学习资料。 总之,Go语言是一种简单、高效、安全、并发的编程语言,特别适用于构建高性能的服务器和分布式系统。如果你正在寻找一种易于学习和使用的编程语言,并且需要处理大量的并发请求和数据,那么Go语言可能是一个不错的选择。
资源推荐
资源详情
资源评论
收起资源包目录
基于Go语言gin框架搭建的可快速开发的微服务脚手架.zip (102个子文件)
.gitignore 83B
rpcUserService.pb.go 8KB
email_test.go 6KB
regmatch.go 5KB
init.go 4KB
rpcUserService_grpc.pb.go 4KB
db.go 3KB
config.go 2KB
user.go 2KB
map.go 2KB
email.go 2KB
serverFind.go 2KB
ws.go 2KB
time.go 2KB
servers.go 2KB
login.go 2KB
aes.go 2KB
main.go 2KB
orm.go 1KB
etcd.go 1KB
encry.go 1KB
zap.go 1KB
init.go 1KB
db.go 1KB
jwt.go 1KB
gorm.go 1KB
httprequest_test.go 1KB
server.go 1KB
viper.go 1KB
db.go 1KB
response.go 1KB
regmatch_test.go 1KB
auth.go 1KB
userIsEnable.go 1KB
grpc.go 1KB
map_test.go 1KB
user.go 971B
consumer.go 920B
code.go 889B
ws.go 822B
wordsfilter.go 791B
api.go 778B
user.go 751B
producer.go 744B
RpcUserService.go 741B
login.go 694B
httprequest.go 667B
serverRegister.go 650B
elastic.go 581B
aes_test.go 553B
rpc_test.go 534B
config.go 524B
user.go 474B
demo.go 467B
mongo.go 457B
ip.go 447B
es.go 421B
config.go 417B
wordsfilter_test.go 392B
server.go 381B
slice.go 367B
rpc.go 365B
server.go 358B
log.go 354B
ws.go 345B
redis.go 339B
http.go 318B
rpcUserService.go 315B
login.go 270B
es.go 264B
account.go 211B
leveldb.go 207B
ws.go 201B
logger.go 157B
login.go 150B
es.go 132B
user.go 117B
login.go 105B
main.go 104B
process.go 102B
server.go 87B
const.go 73B
ws.html 2KB
LICENSE 1KB
Makefile 687B
Makefile 566B
README.md 6KB
mongo.md 481B
RabbitMQ.md 333B
go.mod 5KB
rpcUserService.proto 369B
deploy_docker.sh 1KB
init_env.sh 837B
up_package.sh 823B
run.sh 803B
build.sh 306B
generate_pb.sh 60B
go.sum 70KB
words_filter.txt 57KB
nacos-server.yml 506B
共 102 条
- 1
- 2
资源评论
生瓜蛋子
- 粉丝: 3829
- 资源: 5969
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 目标检测-零售食品LOGO检测数据集-40000张图-+对应VOC-COCO-YOLO三种格式标签+数据集划分脚本
- 目标检测-零售食品LOGO检测数据集-30000张图-+对应VOC-COCO-YOLO三种格式标签+数据集划分脚本
- 目标检测-零售食品LOGO检测数据集-20000张图-+对应VOC-COCO-YOLO三种格式标签+数据集划分脚本
- 目标检测-零售食品LOGO检测数据集-10000张图-+对应VOC-COCO-YOLO三种格式标签+数据集划分脚本
- 基于GUI+MYSQL+JAVA图书管理系统文档说明+源码(高分大作业项目).zip
- 基于Qt使用C++实现图书管理系统源码+数据库(95分以上).zip
- 基于GUI+MYSQL+JAVA票务管理系统文档介绍+源码+数据库(高分大作业).zip
- 优先编码器除法电微分运算电路 全加器函数发生电路等电路经典Multisim仿真实验源文件合集(25个).zip
- 2331308JS课堂案例.zip
- STM32H750VBT6+LAN8720A+microSD+USB type C器件ALTIUM设计(原理图库+PCB封装库)
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功