SF
品味源码
品味源码
注册登录
关注博客
注册登录
主页
关于
RSS
go-zero源码阅读-服务部署
TTSimple
2022-05-03
阅读 8 分钟
1.2k
服务部署生产环境搭建docker & k8s搭建详细请看我的下一篇文章git私有仓库 & 容器私有仓库 & CI、DI详细请看我的下一篇文章配置文件编写 & 生成dockerfile我们先用网关部分代码来演示执行代码 {代码...} 生成文件 code/service/gateway/api/Dockerfile {代码...} 从生成的Dockerfile可以看到主要有两个部分加载golang基...
go-zero源码阅读-负载均衡(下)#第六期
TTSimple
2022-04-10
阅读 14 分钟
1.8k
一致性哈希一致性哈希主要针对的是缓存服务做负载均衡,以保证缓存节点变更后缓存失效过多,导致缓存穿透,从而把数据库打死。一致性哈希原理可以参考这篇文章图解一致性哈希算法,细节剖析本文不再赘述。我们来看看其核心算法 {代码...} 我们来写测试代码,测试下 {代码...} 测试结果如下: {代码...} 从测试中可以看出...
go-zero源码阅读-负载均衡(上)#第五期
TTSimple
2022-04-07
阅读 11 分钟
1.4k
在阅读 go-zero 源码之前我们先来看看常用的负载均衡算法,看看其原理,以及是如何实现,然后我们在用这些负载均衡算法来和 go-zero 的对比下,看看各自的优缺点是啥。
go-zero源码阅读-限流器#第四期
TTSimple
2022-04-01
阅读 5 分钟
2.2k
go-zero 给我们提供了两种限流器,而且都是基于 redis 实现的可分布式的限流器核心文件带注释代码如下,大家可以参阅计数器限流器 [链接]令牌桶限流器 [链接]我们通过最小化代码来看看限流器的核心思路简易计数器算法 {代码...} 最终输出 {代码...} 简易令牌桶算法 {代码...} 最终输出 {代码...} 简易漏桶算法漏桶算法的...
go-zero源码阅读-过载保护#第三期
TTSimple
2022-03-30
阅读 3 分钟
1.2k
之前在设计架构的时候对于服务过载保护只会想到在客户端、网关层来实现,没考虑过在服务端也可以达到这种效果,一来涉及这种技术的文章较少(可能是我孤陋寡闻了),二来服务端不确定的情况比较多,比如服务器出现问题,或者其他在同一台服务器运行的软件把服务器直接搞挂,这样在服务端实现过载保护在某些层面来说鲁棒性...
go-zero源码阅读-代码结构#第一期
TTSimple
2022-03-29
阅读 5 分钟
2.6k
go-zero 作为一个微服务框架,不仅给我们提供了很好的参考,而且核心代码量不多,我们可以在闲暇时间读读他的核心代码,来多多学习充电。rest 部分代码结构 {代码...} 服务启动流程我们以 go-zero-example 项目 http/demo/main.go 代码来分析go-zero 给我们提供了如下组件与服务,我们来逐一阅读分析http框架常规组件(...