
Golang
文章平均质量分 85
_kaifei
......
展开
-
待整理知识点
goroutine 并发go 异常处理,defer,panicsingal 信号量acl,rbac 访问控制sync.map 并发下的 map原创 2019-01-17 14:06:10 · 140 阅读 · 0 评论 -
27. 互斥锁与读写锁
文章目录Golang 锁互斥锁读写锁Golang 锁Go中锁分为两种:互斥锁读写锁互斥锁并发程序对公共资源访问的限制最常见的就是使用互斥锁的方式。在Go中,sync.Mutex 提供了互斥锁的实现。简单使用示例:func main() {var mutex sync.Mutexcount := 0for r := 0; r < 50; r++ { go func() { mutex.Lock() count += 1原创 2020-07-07 15:46:50 · 581 阅读 · 0 评论 -
26. Context 工具包
文章目录What is contextContext 结构Context 的继承派生Why use contextselect + channel 协程间的通信How to useContext 使用原则What is contextContext 中文为 上下文,可以用来简化单个请求多个 goroutine 之间关于数据共享,取消信号,截止时间等操作。Context 结构Context 在 golang 工具包中,是一个 interface,其结构如下:type Context interfac原创 2020-07-07 12:04:04 · 303 阅读 · 0 评论 -
25. NSQ 简介及教程
NSQ 简介及教程文章目录What is nsqWhy use nsqHow to use nsqExampleInstallTestCaseConsumerProducerWhat is nsqNSQ is a realtime distributed messaging platform.IntroduceLinksNSQ源码解析(1)–设计理念浅析NSQ 解析Why use...原创 2020-04-30 14:44:07 · 1420 阅读 · 0 评论 -
24. Fixed moudle configuration for non public moudles
Fixed moudle configuration for non public moudles文章目录How to sloveSlove ExampleHow to sloveThere are two methods can slove problem:Module_configuration_for_non_public_moduleshttps://goproxy.io/ (...原创 2019-12-26 18:43:31 · 202 阅读 · 0 评论 -
23. 文件操作
文章目录文件目录的创建和删除文件的创建文件的读取和写入文件的读取文件的写入文件目录的创建和删除package mainimport( "fmt" "os")func main(){ //创建目录和权限 os.Mkdir("./benben",0777) //创建多级目录和设置权限 os.MkdirAll("./benben/test",...原创 2019-06-06 18:53:12 · 213 阅读 · 0 评论 -
22. break 跳出循环
文章目录select 与 for 结合使用时,break 语句无法跳出循环跳出循环的几种方式break labelgoto labelreturnselect 与 for 结合使用时,break 语句无法跳出循环func TestBreakInSelectAndFor(t *testing.T) { quitChan := make(chan bool) runForever := mak...原创 2019-02-28 19:32:09 · 1408 阅读 · 0 评论 -
21. 资源库 - zap.loggger
文章目录日志概述Zap 简介Zap 用法实例日志概述日志的级别从低到高可分为:debuginfowarnerrorfatal实际使用中可根据不同的场景,使用不同级别的日志来记录。使用日志框架的目的:一般程序语言自带的日志函数,在效率、易用性及功能上并不能满足项目需求,所以通常需要借助第三方日志框架来实现。这次我们选择使用 uber 的日志框架 zap。Zap 简介B...原创 2019-02-14 19:29:13 · 592 阅读 · 1 评论 -
20. 权限控制模式:ACL、RBAC、ABAC
文章目录权限控制模式ACLRBACABACGo casbin 权限库的使用权限控制模式ACL概述:权限访问列表实现原理:给每个用户指定相应的权限。典型的用例为,微软的文件系统权限缺点:对权限的管理比较分散,无法集中管理。如无法一次性将某种权限分给一群用户,也无法一次性回收。RBAC概述:基于角色的访问控制实现原理:权限的分配和回收都是基于角色的,只有对于的角色有相应的权限...原创 2019-01-24 18:54:54 · 6602 阅读 · 0 评论 -
19. Signal 信号处理
传送门:https://colobu.com/2015/10/09/Linux-Signals/原创 2019-01-24 18:10:57 · 521 阅读 · 0 评论 -
18. Go 异常处理 defer panic recover
Go 异常处理 defer panic recover文章目录deferpanicrecover代码示例Go语言追求简洁优雅,所以,Go语言不支持传统的 try…catch…finally这种异常,因为Go语言的设计者们认为,将异常与控制结构混在一起会很容易使得代码变得混乱。因为开发者很容易滥用异常,甚至一个小小的错误都抛出一个异常。在Go语言中,使用多值返回来返回错误。不要用异常代替错误,...原创 2019-01-18 19:34:55 · 178 阅读 · 0 评论 -
17. Goroutine 的并发与超时控制
Goroutine 的并发与超时控制文章目录并发按序返回超时控制并发限制并发package mainimport ( "fmt" "time")func run(task_id, sleeptime int, ch chan string) { time.Sleep(time.Duration(sleeptime) * time.Second) ch...原创 2019-01-18 18:24:19 · 1204 阅读 · 0 评论 -
16. Cobra And Viper
文章目录CobraDocsExampleViperDocsExample - Bind with viper and viper read config from fileCobraCobra 是一个 Command Line LibraryDocsCobra-A Commander for modern Go CLI interactionsExampleCode Example...原创 2018-12-06 10:55:57 · 507 阅读 · 0 评论 -
15. HttpClient
HttpClient 的用法HttpClient 用法Get请求Post请求一种是使用http.Post方式一种是使用http.PostForm方法复杂的请求HttpClient 用法Get请求get请求可以直接http.Get方法,非常简单。func httpGet() { resp, err := http.Get("http:/...原创 2018-06-07 17:29:27 · 179 阅读 · 0 评论 -
14. Makefile
使用 Golang 已经有一阵了,在 Golang 的开发过程中,我已经习惯于不断重复地手动执行 go build 和 go test 这两个命令. 不过,现在我已经摆脱了这个习惯。如果只用到了不带参数的简单命令,直接这么操作可能并不可怕。但是在一些复杂的任务中,如果依旧是手动执行 go build 和 go test ,就可能会成为一个让人头疼的事情。我们可以通过其他方式解决这个问题。比如,...原创 2018-05-14 10:59:04 · 150 阅读 · 0 评论 -
13. 交叉编译
Golang 支持交叉编译,在一个平台上生成另一个平台的可执行程序,最近使用了一下,非常好用,这里备忘一下。Mac 下编译 Linux 和 Windows 64位可执行程序CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build main.goCGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build main...原创 2018-04-02 14:49:49 · 195 阅读 · 0 评论 -
12. Go 反射
Go 反射原创 2018-01-27 13:26:06 · 363 阅读 · 0 评论 -
11. gorm 操作要点
Gorm 操作指导原创 2018-01-24 10:19:43 · 22739 阅读 · 0 评论 -
10. Go 单元测试
Go 单元测试原创 2017-12-22 13:48:46 · 726 阅读 · 0 评论 -
9. Golang 点滴
JetBrains Goland 激活方式:激活时选择License server 填入 http://idea.imsxm.com 点击Active即可。GoInAction pdf 下载:https://github.com/GNUSource/tutorial-goGo 基础教程:Go 基础教程Go web 编程正则表达式:正则语法正则函数操作...翻译 2020-10-16 11:59:55 · 822 阅读 · 0 评论 -
8. 标准库(Go Tutorial)
标准库原创 2017-12-04 14:51:01 · 391 阅读 · 0 评论 -
7. 并发模式(Go Tutorial)
并发模式原创 2017-12-01 15:50:47 · 326 阅读 · 0 评论 -
6. 并发(Go Tutorial)
并发原创 2017-11-30 10:26:33 · 341 阅读 · 0 评论 -
5. Go 语言的类型系统(Go Tutorial)
Go 语言的类型系统原创 2017-11-29 14:29:55 · 697 阅读 · 1 评论 -
4. 数组、切片和映射(Go Tutorial)
数组、切片和映射(Go Tutorial)原创 2017-11-28 16:41:38 · 588 阅读 · 1 评论 -
3. 打包和工具链(Go Tutorial)
打包和工具链(Go Tutorial)原创 2017-11-27 18:12:05 · 1257 阅读 · 0 评论 -
1. Hello Go(Go Tutorial)
Hello Go(Go Tutorial)关于 Go 语言的介绍原创 2017-11-27 15:06:28 · 330 阅读 · 0 评论