go-zero开源项目的成长史## go-zero 开源项目成⻓史 ## 万 俊峰Kevin ## About me go-zero 作者 阿里云MVP 腾讯云TVP ArchSummit 明星讲师 GopherChina 主持人&金牌讲师 极客时间 Go 专题出品人 腾讯云开发者大会讲师 go-zero 的由来 ## TOC go-zero 的现状 go-zero 的成长阶段 go-zero 推广思路 go-zero 社区发展思考 go-zero 的未来 ## go-zero 的由来 • 源起 2013 业务驱动、业务支撑 • 经历过的业务 • 经历过的 Go 发展阶段 ## go-zero 的现状 - star 增长趋势 - contributors - 用户 - 社区用户 - 企业用户 - 质量标准 质量标准 - 需求 - PR 标准 ## go-zero 数据统计 zeromicro/go-zero Total stars Avg. commits/day Avg. stars/day ☆24,339 23.79 1.77 Avg. forks/day 3.31 Avg. issues/day 1.23 Avg. pull requests/day 10 码力 | 31 页 | 4.83 MB | 1 年前3
云原生go-zero微服务框架设计思考## 云原生go-zero微服务框架设计思考 万俊峰Kevin@好未来 ## 关于我 ## 万 俊峰Kevin go-zero作者 好未来资深专家 晓黑板研发负责人 十多年研发团队管理经验 近20年开发和架构经验 ## Agenda go-zero之前世今生 go-zero是如何设计的 go-zero如何高效解决问题 ## go-zero之前世今生  ## go-zero的由来 ● 单体服务的困局 ● 架构的选型 ● 如何无痛切换  ## go-zero是什么? Web & RPC微服务框架 ● 微服务代码生成工具goctl 微服务代码生成工具goctl ☑ 通用API定义规范 ## go-zero的设计原则 ● 保持简单,第一原则 弹性设计,面向故障编程 工具大于约定和文档 ● 尽可能约束做一件事只有一种方式 ● 对业务开发友好,封装复杂度 ## go-zero是如何设计的 客户端 iOS 安卓 web PC HTTP协议 鉴权&防重放 加解密 日志记录 API端 异常捕获 监控报警0 码力 | 29 页 | 5.70 MB | 1 年前3
微服务容灾治理## 微服务容灾治理 ### 1. go-zero 稳定性能力概览 经过这么多年大流量服务端架构设计的沉淀,go-zero 在保护服务的稳定性上下足了功夫,不管是 CPU 密集型还是 IO 密集型服务,go-zero 都能很好的保护服务在如下场景不被拖垮或卡死: 远超服务容量的突发大流量 CPU 打满 • 上下游故障或者超时 • MySQL、MongoDB、Redis 等中间件故障或者超负载(典型的是 被打满了,是不是后面所有的请求也都被卡住了?等服务处理完请求的时候,用户那里可能已经超时离开了,结果服务器很忙,但都是做的无用功。如果这里不能理解,停下来好好思考一番,如果还不懂的话,可以来 go-zero 群里讨论讨论。。。 ### 2.1 模拟 CPU 密集型服务 有人可能会问 CPU 密集型服务怎么定义?你的服务 CPU 会打满吗?处理请求会包含复杂的计算逻辑吗?你经常需要通过 cpu profiling 使用率计算是第一个难点,很难算准,依赖于系统繁忙程度,是否能够及时调度到读取 CPU 使用率相关文件的执行。 #### 3.1.1 CPU 检测场景 过载保护的一个触发条件就是当系统的 CPU 高于一个阈值时,go-zero 会自动触发过载保护,那么我们怎么检测 CPU 使用率呢? 首先,我们要明确需要覆盖的场景,当前无外乎虚机和容器两大类了。而容器里又分为 cgroup v1 和 cgroup v2,所以总的有三类需要处理:0 码力 | 13 页 | 1.68 MB | 2 年前3
2.2.5 Go 如何助力企业进行微服务转型## Go 如何助力企业进行微服务转型 万俊峰Kevin go-zero 作者 - 好未来技术委员会资深专家 ## About me • GopherChina 金牌讲师 • ArchSummit 明星讲师 • 腾讯云开发者大会讲师 ## Agenda · 为什么选 Go? • 单体和微服务怎么选? • 单体到微服务何时转? • 单体到微服务怎么转? ## 为什么选 Go? • adaf73e6aa976955d4d6/p22_1.jpg) ## Wrap up • Prefer Go over ... • 怎么选? • 何时转? • 怎么转? ## go-zero渐进式微服务框架 ## STAR TREND  万俊峰 Kevin github.com/tal-tech/go-zero  万俊峰 Kevin 中国大陆0 码力 | 25 页 | 4.51 MB | 2 年前3
1.1.4 谈谈 Go 服务稳定性建设谈谈 Go 服务稳定性建设 万俊峰Kevin kevwan@github About me go-zero 作者 • 阿里云MVP • 腾讯云TVP • ArchSummit 明星讲师 • GopherChina 主持人&金牌讲师 • 极客时间 Go 专题出品人 • 腾讯云开发者大会讲师 TOC 稳定性的定义 Go 服务稳定性手自 稳定性的度量 Go 服务监控告警 Go > https://github.com/zeromicro/go-zero 欢迎 star, fork, issue, PR! ’ alt=‘OCR图片’/> 微服务实践 微信扫描二维码,关注我的公众号 GitHub https://github.com/zeromicro/go-zero0 码力 | 18 页 | 1.58 MB | 1 月前3
共 5 条
- 1













