gozero微服务(2) -- 入门 入门 1. 环境准备 go版本: C:\Users\Huo>go version go version go1.20.1 windows/amd64 goctl安装: goctl(官方建议读go control)是go-zero微服务框架下的代码生成工具。使用 goctl 可显著提升开发效率,让开 2024-05-10 gozero微服务框架 #go
gozero微服务(1) -- 介绍 微服务 1. 什么是微服务? 微服务架构(通常简称为微服务)是指开发应用所用的一种架构形式。 通过微服务,可将大型应用分解成多个独立的组件,其中每个组件都有各自的责任领域。在处理一个用户请求时,基于微服务的应用可能会调用许多内部微服务来共同生成其响应。 多个独立的组件,指的就是微服务 独立服务一般有 2024-05-10 gozero微服务框架 #go
go框架(11)-grpc认证 认证 客户端和服务端之间调用,我们可以通过加入证书的方式,实现调用的安全性 TLS(Transport Layer Security,安全传输层),TLS是建立在传输层TCP协议之上的协议,服务于应用层,它的前身是SSL(Secure Socket Layer,安全套接字层),它实现了将应用层的报文 2024-05-09 go框架 #go
go框架(10)-事务和Hook 事务和Hook 1. 会话Session 为了避免共用db导致的一些问题,gorm提供了会话模式,通过新建session的形式,将db的操作分离,互不影响。 创建session的时候,有一些配置: // Session 配置 type Session struct { DryRun 2024-05-09 go框架 #go
go框架(9)-增删改查 增删改查 1. 插入数据 user := User{ Username:"zhangsan", Password:"123456", CreateTime:time.Now().Unix(), } db.Create(&user) user.ID // 返回插入数据的 2024-05-09 go框架 #go
go框架(8)-模型定义 模型定义 前面入门案例中,我们定义了User结构体用来和数据表users做映射,User结构体,我们称之为数据模型,在gorm框架中,操作数据库需要预先定义模型。 底层都是使用的golang的database标准库,利用反射原理,执行读写操作时,将结构体翻译为sql语句,并将结果转化为对应的模型。 2024-05-09 go框架 #go
go框架(7)-gorm 快速入门 gorm地址:https://github.com/go-gorm/gorm 对开发者友好的gorm库,目前使用最广的go orm库之一 1. 入门 数据库以目前使用最多的mysql为例。 //安装MySQL驱动 go get -u gorm.io/driver/mysq 2024-05-09 go框架 #go
go框架(6)-gin中间件 中间件 在Gin框架中,中间件(Middleware)指的是可以拦截http请求-响应生命周期的特殊函数,在请求-响应生命周期中可以注册多个中间件,每个中间件执行不同的功能,一个中间执行完再轮到下一个中间件执行。 中间件的常见应用场景如下: 请求限速 api接口签名处理 权限校验 统一错误处理 Gi 2024-05-09 go框架 #go
go框架(6)-gin会话 会话 会话控制涉及到cookie和session的使用 1. cookie HTTP是无状态协议,服务器不能记录浏览器的访问状态,也就是说服务器不能区分两次请求是否由同一个客户端发出 Cookie就是解决HTTP协议无状态的方案之一 Cookie实际上就是服务器保存在浏览器上的一段信息。浏览器有了C 2024-05-09 go框架 #go