go 49
分布式事务 1
channel 6
goroutine 8
map 2
GMP 1
值拷贝 2
垃圾回收 3
设计模式 8
并发编程 5
singleFlight 1
waitgroup 1
go-zero教程 8
docker-compose 7
etcd 2
服务注册 1
服务发现 1
prometheus 1
grafana 1
服务监控 1
分布式锁 1
链路追踪 1
redis 3
单元测试 1
消息队列 1
socket编程 1
前端 1
grpc 3
锁 1
工具 1
mysql 1
命令行 1
answer 1
技术
singleFlight源码解析
SingleFlight作用是将并发请求合并成一个请求,以减少对下层服务的压力。应用场景大量的请求同时过来,查询一个已经失效的缓存,导致大量请求打到数据库(缓存击穿)如何使用?这个时候就需要使用singleFlight合...
继续阅读
技术
goroutine&waitgroup下载文件
当我们下载一个大文件的时候,会因为下载时间太久而超时或者出错。那么我么我们可以利用goroutine的特性并发分段的去请求下载资源。1、Accept-Ranges首先下载链接需要在响应中返回Accep goroutine...
继续阅读
技术
golang中的几种并发模式
1、for-select模式这种模式通常用在从多个通道读取数据packagemainimport("fmt""time")funcmain(){ch1,ch2:=mak channel,s...
继续阅读
技术
golang中经常会犯的一些错误
1、未知的枚举值我们现在定义一个类型是unit32的Status,他可以作为枚举类型,我们定义了3种状态typeStatusuint32const(StatusOpenStatus=iotaStatu go,golang...
继续阅读