
golang
文章平均质量分 94
沐-羽晨
逆光飞翔,因为坚持才会有希望
展开
-
make和new的区别
make和new的区别文章v2版make和new的区别作用对象make 只能用于slice,chan,map 对这些对象进行初始化new 用于 golang任意type 自定义类型和 内置数据类型语义make(T,args) 初始化内置数据结构(slice,chan,map)new(T) 根据传入的类型,分配一片零值的内存空间,并返回指向这片内存空间的指针 value *T ,显示的创建了对象的一个指针,而不必使用&T对获取该对象的地址。官方Allocation with new原创 2021-02-17 21:24:52 · 700 阅读 · 0 评论 -
golang的context的理解
contextgolang的context的理解context介绍context的解决问题的场景context的怎么使用context包中的 一些重要数据结构疑问解答context是如何通知子协成结束的?为什么对外部返回一个cancel呢?canel传true和false的用意和区别?如何判断协成超时呢?如何添加 子context到 父亲的context的 childrentimeCtx的cancel如何取消的?parentCancelCtx(parent) 如何才能返回 false???参考链接gola原创 2021-01-31 16:56:52 · 439 阅读 · 0 评论 -
gRPC的stream使用
gRPC的stream介绍gRPC的stream介绍gRPC为什么提供 steam功能?gRPC的stream的分类一元RPC客户端流RPC服务端流RPC双向流RPCgRPC的stream介绍gRPC为什么提供 steam功能?在以下场景使用unary rpc 可能有如下问题数据表过大可能造成熟瞬时的压力服务需要全部数据接收完毕,才能正确回调响应,进行业务处理,不能客户端边发送,服务端边接受。stream rpc 适用于,大规模数据传递,和实时场景。gRPC的stream的分类原创 2020-11-28 16:25:41 · 9427 阅读 · 1 评论 -
golang的database/sql的SetMaxxxx
目录database/sql的SetMax的总结setMaxxxx的设置golang的mysql参数详解疑惑为什么创建db后,要先ping一下如何证明连接池的存在学到了什么mysql的wait_timeout和max_connections灵感为什么会突然研究这个database/sql的SetMax的总结setMaxxxx的设置golang的mysql参数详解SetMaxOpenConns 允许最大打开的连接数默认值为0,没有限制,包含正在使用的连接和连接池中的连接,如果连接数超过Set原创 2020-08-02 10:58:07 · 645 阅读 · 0 评论 -
gin的BindJSON和ShouldBindJSON,ShouldBindWith的区别
gin的BindJSON和ShouldBindJSON,ShouldBindWith的区别BindJSON和ShouldBindJSON,ShouldBindWith的区别如何选择使用BindJSON和ShouldBindJSON,ShouldBindWith的区别BindJSON()返回错误,并在header里面写400的状态码// BindJSON is a shortcut ...原创 2019-09-13 09:48:57 · 38064 阅读 · 0 评论 -
Gin中的Context包的Next
Next初步理解官方说,Next应该在中间件使用 Next should be used only inside middleware.,Next的方法内部会调用该路由前的其他其他中间件去执行,然后最后在执行该路由,可以做一些请求路由前的日志打印,参数验证,Gin的中间件的使用没有Next参考代码package mainimport ( "fmt" "github.co...原创 2019-08-25 10:47:04 · 3235 阅读 · 0 评论 -
Golang实现用户每秒的请求次数的限制
参考链接限制用户单位时间请求接口次数代码总意在模拟演示并发请求的情况下,然后来限制用户1s内只能请求3,如果请求超过3次,则返回错误的提示信息,代码实现main.gopackage mainimport ( "net/http" "sync")func main() { wg := sync.WaitGroup{} wg.Add(5) go func()...原创 2019-07-27 22:33:59 · 5748 阅读 · 0 评论 -
beego框架的session和cookie的理解
参考链接session和cookie之间的关系分析:1.为什么客户端关闭后,再此打开客户端,访问页面,服务端无法获取到session中key对应的value值?2.客户的cookie的beegosessionID(sessionID)和服务端的session是如何关联的?3.beego框架默认使用的什么session?4.beego是如何给客户端返回beegosess...原创 2019-04-27 17:00:46 · 1012 阅读 · 0 评论 -
golang中GOPATH的简单理解
1、为什么要配置GOPATH配置GOPATH的用意是为了方便项目的部署和构建,以及可以直接使用go get 命令下载第三方的包到自己的项目的src下和相关的执行文件bin目录,和中间文件pkgsrc :项目的源代码pkg :编译后的生成文件bin : 编译后的可执行文件如果你只是想单独的写个go代码可以不设置GOPATH2、结合GoLand来讲解GOPATH2.1:使用...原创 2018-11-12 12:08:15 · 9059 阅读 · 0 评论 -
golang中的flag包的使用
package flagimport "flag"flag包实现了命令行参数的解析。要求:使用flag.String(), Bool(), Int()等函数注册flag本次使用flag.Stirng()来讲解一些如何使用1.首先根据代码来分析package mainimport ( "flag" "fmt")//flag的作用是用来解析命令行的参数//...原创 2018-10-27 08:37:41 · 2651 阅读 · 0 评论