9 e>
GopherChina 2017
开发环境构建:Goflow-工具链集成
goflow 是分发平台
全部放在vendor里面
自我迭代时更新
function _install() {
go install -v xxxxxxxx.com/ezbuy/vendor/$1
install github.com/ezbuy/ezorm
install github.com/ezbuy/tgen 0 码力 |
45 页 |
3.62 MB
| 1 月前 3 ## 微服务容灾治理
### 1. go-zero 稳定性能力概览
经过这么多年大流量服务端架构设计的沉淀,go-zero 在保护服务的稳定性上下足了功夫,不管是 CPU 密集型还是 IO 密集型服务,go-zero 都能很好的保护服务在如下场景不被拖垮或卡死:
远超服务容量的突发大流量
CPU 打满
• 上下游故障或者超时
• MySQL、MongoDB、Redis 等中间件故障或者超负载(典型的是
如图,我们从三个方面来保护系统的稳定性:
服务端自适应过载保护
服务端自适应熔断
• 客户端自适应熔断
当然,我们还有自动适配后端服务能力的负载均衡算法,对稳定性进一步保驾护航。本文主要讲解自适应过载保护的原理、场景和表现。
### 2. 自适应过载保护压测
用过 Windows 的同学对这个界面应该都不陌生,这就是典型 CPU 打满服务不可用的表现。此时,我们一般都是心里默默骂一句,然后点左边那个按钮,对吧? jpg)
那我们想想,如果我们的服务 CPU 被打满了,是不是后面所有的请求也都被卡住了?等服务处理完请求的时候,用户那里可能已经超时离开了,结果服务器很忙,但都是做的无用功。如果这里不能理解,停下来好好思考一番,如果还不懂的话,可以来 go-zero 群里讨论讨论。。。
### 2.1 模拟 CPU 密集型服务
有人可能会问 CPU 密集型服务怎么定义?你的服务 CPU 会打满吗?处理请求会包含复杂的计算逻辑吗?你经常需要通过 0 码力 |
13 页 |
1.68 MB
| 2 年前 3 ## 微服务环境下的系统治理与容错
王新栋

## 收获国内外一线大厂实践 与技术大咖同行成长
✓ 演讲视频 ✓ 干货整理 ✓ 大咖采访 ✓ 行业趋势
关注 QCon 公众号

## About The SPEAKER
- 《架构修炼之道》作者,《决战618:探秘京东技术取胜之道》联合作者;
- 对分布式、微服务系统有多年实战经验,所设计和研发的系统经历了多次百亿流量的验证;
- 热爱分享,维护技术公众号 [程序渠道],对高并发、高可用系统有持续不懈的追求;
个人微信号

## TABLE OF CONTENTS 大 纲
- 微服务架构
• 治理
• 容错
• 总结

## 微服务架构
## 架构
## 架构是为应用程序服务的
## 软件系统应用程序的需求
## 功能性需求
☑ C端用户需要能够快速查看自己的订单 0 码力 |
45 页 |
16.09 MB
| 2 年前 3
GIAC
全球互联网架构大会
GLOBAL INTERNET ARCHITECTURE CONFERENCE
Dubbo Spring Cloud 重塑微服务治理
小马哥(mercyblitz)
’ alt=‘OCR图片’/>
自我介绍
小马哥(@mercyblitz)
父亲,Java 劝退师,Apache Dubbo PMC、Spring Cloud Alibaba 项目架构师,《Spring alt=‘OCR图片’/>
主办方:msup ARCHNOTES
主要议程
Java 微服务框架 - Spring Cloud
Dubbo 迈向 Spring Cloud 之路
Dubbo Spring Cloud 对微服务治理的提升
’ alt=‘OCR图片’/>
Java 微服务框架 - Spring Cloud
Spring Cloud 功能特性
Spring Cloud - Distributed/versioned configuration
服务注册与发现-Service registration and discovery
服务路由-Routing
服务调用 - Service-to-service calls
负载均衡 - Load balancing
服务熔断 - Circuit Breakers
分布式消息 - Distributed 0 码力 |
31 页 |
1.69 MB
| 1 月前 3
Go微服务实战
毛剑
GopherChina 2017
’ alt=‘OCR图片’/>
Agenda
微服务的演进
高可用
中间件
持续集成和交付
运维体系
微服务的演进
’ alt=‘OCR图片’/>
微服务的演进
梳理业务边界
资源隔离部署
内外网服务隔离
RPC框架
API Gateway
微服务的演进
archive
account
member
videoup
feed org
微服务的演进
梳理业务边界
资源隔离部署
内外网服务隔离
RPC框架
API Gateway
微服务的演进
’ alt=‘OCR图片’/>
微服务的演进
梳理业务边界
资源隔离部署
内外网服务隔离
RPC框架
API Gateway
微服务的演进
’ alt=‘OCR图片’/>
微服务的演进
梳理业务边界
资源隔离部署
内外网服务隔离
RPC框架
API Gateway
微服务的演进 微服务的演进
序列化 (GOB)
上下文管理(超时控制)
拦截器(鉴权、统计、限流)
服务注册(Zookeeper)
负载均衡(客户端)
微服务的演进
type TestArgs struct {
A, B int
}
type TestReply struct {
C int
}
type TestTimeout struct {
T time.Duration
} 0 码力 |
57 页 |
3.24 MB
| 1 月前 3 # Service Mesh Meetup #4 上海站 探讨和实践基于Istio的微服务治理事件监控
2018.11.25 徐运元
## 关于我



微服务平台的监控演进 ## 目录 CONTENTS

## 微服务平台的监控演进
## 典型的运维场景

0 码力 |
29 页 |
8.37 MB
| 1 年前 3
Go 微服务架构 - 来自 Java/Spring 开发者视角
Nash Tsai, Technical Expert @阿里云
GopherChina 2017
’ alt=‘OCR图片’/>
Nash Tsai(聪心)
技术专家@阿里云-飞天8部-数据库组
OpenAPI services architecture
Software Engineering (~10y experience) vs. Go tooling)
Introduction of gPRC and Go kit
Micro-services best practices
GopherChina 2017
背景-云产品前端架构
中间件
入口
Aliyun 控制台前端
Dubbo/HSF注册中心& Console
HTTP
Aliyun API网关服务
Aliyun 日志服务(SLS)
缓存服务 (Tair) BIZ驱动&接口服务(s)
Aliyun 消息队列服务 (ONS)
RDS BUY Dubbo 服务 (s)
Credential System
RDS CMD Dubbo 服务 (s)
DDS BUY Dubbo 服务 (s)
ApsaraDB
Common
BUY Driver
Dubbo 服务
(s)
DDS CMD Dubbo 服务 (s)
KVStore BUY Dubbo 服务 (s)
Async 0 码力 |
26 页 |
1.74 MB
| 1 月前 3 谈谈 Go 服务稳定性建设
万俊峰Kevin
kevwan@github
About me
go-zero 作者
• 阿里云MVP
• 腾讯云TVP
• ArchSummit 明星讲师
• GopherChina 主持人&金牌讲师
• 极客时间 Go 专题出品人
• 腾讯云开发者大会讲师
TOC
稳定性的定义
Go 服务稳定性手自
稳定性的度量
Go 服务监控告警
Go 服务故障演练 服务故障演练
Go 服务排障
稳定性定义
可用性
正确性
延迟
’ alt=‘OCR图片’/>
Go 服务稳定性手段
需求合理性
技术方案简洁性
code review
单元测试
自动化回归
稳定性手段
正确性(涉及到钱的服务)
幂等
至少一次
保序
浮点精度 (decimal)
正确性校验机制
稳定性度量
可用性 正确性(涉及到钱的服务)
财务对账系统
安全风控
稳定性度量
时延
Average
P50
P99
P99.9
’ alt=‘OCR图片’/>
Go 服务监控告警
具
• Prometheus
• 基础指标需要自动上报
• 业务指标按需上报(但要使用便捷)
• OpenTelemetry
• 链路不能断
• 消息、电话
• 普通告警消息
• 重要告警电话
Go 服务监控告警 0 码力 |
18 页 |
1.58 MB
| 1 月前 3 OpenSergo:下一代微服务治理标准与实践
赵奕豪(宿何)
阿里云
云原生技术专家,Sentinel & OpenSergo 负责人
Why 微服务治理? 01
服务治理核心能力与原理揭秘 02
服务治理控制面与标准规范 03
未来展望 04
01 Why 微服务治理?
’ alt=‘OCR图片’/>
现代微服务架构的挑战
用好微服务的挑战:稳定性
’ alt=‘OCR图片’/>
现代微服务架构演进 现代微服务架构演进
微服务N大件:服务提供者,服务消费者,注册配置中心,微服务治理
对微服务体系中的各个组件、环节进行稳定性治理,是把微服务做稳做好的必不可少的一环
’ alt=‘OCR图片’/>
微服务治理划分:全生命周期的稳定性治理
开发态与测试态
服务契约
服务调试
端云互联
开发环境隔离
服务压测
变更态
无损下线
无损上线
金丝雀发布
A/B Test
全链路灰度 不稳定调用(熔断、隔离)
不稳定架构与基础设施(容灾多活)
安全
服务鉴权
服务零信任
Kratos
CloudWeGo
服务框架
据调研数据 70%的线上问题都是由于变更导致的
运行时稳定性问题更是防不胜防
’ alt=‘OCR图片’/>
全链路流量治理(漏斗模型)
’ alt=‘OCR图片’/>
服务治理核心能力与原理揭秘
’ alt=‘OCR图片’/>
核心场景1:全链路灰度控制消除变更态稳定性风险 0 码力 |
36 页 |
6.55 MB
| 1 月前 3 ## Go 如何助力企业进行微服务转型
万俊峰Kevin
go-zero 作者
- 好未来技术委员会资深专家
## About me
• GopherChina 金牌讲师
• ArchSummit 明星讲师
• 腾讯云开发者大会讲师
## Agenda
· 为什么选 Go?
• 单体和微服务怎么选?
• 单体到微服务何时转?
• 单体到微服务怎么转?
## 为什么选 Go?
• • 节省服务成本
• 开发效率
CI/CD简单
• 云原生友好
思想是多元的,观点是个人的
## 单体和微服务怎么选?
## 单体的优点
• 开发简单
• 测试简单
• 部署简单
• 扩展简单
## 单体的缺点
• 难以理解和功能扩展
• 小改动也得全量更新
小问题容易触发大故障
• 能够支撑的业务规模有限
## 微服务的优点
• 边界清晰的业务拆分
易开发、易理解、易维护 易开发、易理解、易维护
技术栈可相对独立
• 持续集成、持续部署更容易
• 按需对服务进行治理
• 稳定性更容易保障
## 微服务的缺点
• 增加了系统复杂度
数据拆分复杂度
• 难调试、难测试
• 跨服务修改麻烦
• 部署复杂
## 到底怎么选?
首先看业务
- 其次看团队
• 从简单入手
• 预留可能性
Monolith
Microservices
Client
![Image 0 码力 |
25 页 |
4.51 MB
| 2 年前 3
|