容器与微服务专题论坛 - community.qingcloud.com...容器与微服务专题论坛...

15
云无界数未来容器与微服务专题论坛

Upload: others

Post on 23-Jun-2020

28 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 容器与微服务专题论坛 - community.qingcloud.com...容器与微服务专题论坛 丨云无界丨 数未来丨 ... 单体应用迁移到微服务. ... Microservice With Docker

丨云无界丨 数未来丨

A

容器与微服务专题论坛

Page 2: 容器与微服务专题论坛 - community.qingcloud.com...容器与微服务专题论坛 丨云无界丨 数未来丨 ... 单体应用迁移到微服务. ... Microservice With Docker

企业应用向容器迁移和微服务改造实践

张仁宇青云QingCloud 应用与容器平台工程师

Page 3: 容器与微服务专题论坛 - community.qingcloud.com...容器与微服务专题论坛 丨云无界丨 数未来丨 ... 单体应用迁移到微服务. ... Microservice With Docker

丨云无界丨 数未来丨容器与微服务专题论坛

‣为什么容器化

‣为什么微服务

‣如何改造应用

Agenda

Page 4: 容器与微服务专题论坛 - community.qingcloud.com...容器与微服务专题论坛 丨云无界丨 数未来丨 ... 单体应用迁移到微服务. ... Microservice With Docker

丨云无界丨 数未来丨容器与微服务专题论坛

为什么要容器化

• 更快的迭代

• 环境一致

• 随处可运行

• 隔离性

• 快速创建

Page 5: 容器与微服务专题论坛 - community.qingcloud.com...容器与微服务专题论坛 丨云无界丨 数未来丨 ... 单体应用迁移到微服务. ... Microservice With Docker

丨云无界丨 数未来丨容器与微服务专题论坛

‣假如你要开发一个打车软件来和滴滴

竞争,经过一些讨论和需求收集,决

定使用 Rails, Spring Boot, Play 来

实现这套系统

为什么要做微服务

Page 6: 容器与微服务专题论坛 - community.qingcloud.com...容器与微服务专题论坛 丨云无界丨 数未来丨 ... 单体应用迁移到微服务. ... Microservice With Docker

丨云无界丨 数未来丨容器与微服务专题论坛

‣扩展困难 各个模块对资源的需求不同,CPU/内存

‣可靠性差 模块之间相互影响

‣测试部署困难 无法独立部署

‣无法采用新架构

微服务优势

Page 7: 容器与微服务专题论坛 - community.qingcloud.com...容器与微服务专题论坛 丨云无界丨 数未来丨 ... 单体应用迁移到微服务. ... Microservice With Docker

丨云无界丨 数未来丨容器与微服务专题论坛

微服务优势

Page 8: 容器与微服务专题论坛 - community.qingcloud.com...容器与微服务专题论坛 丨云无界丨 数未来丨 ... 单体应用迁移到微服务. ... Microservice With Docker

丨云无界丨 数未来丨容器与微服务专题论坛

微服务权衡

✓ Strong Module Boundaries

✓ Independent Deployment

✓ Technology Diversity

➢ Distribution

➢ Eventual Consistency

➢ Operational Complexity

Page 9: 容器与微服务专题论坛 - community.qingcloud.com...容器与微服务专题论坛 丨云无界丨 数未来丨 ... 单体应用迁移到微服务. ... Microservice With Docker

丨云无界丨 数未来丨容器与微服务专题论坛

‣避免大规模重写代码

‣逐步迁移(Strangler)

单体应用迁移到微服务

Page 10: 容器与微服务专题论坛 - community.qingcloud.com...容器与微服务专题论坛 丨云无界丨 数未来丨 ... 单体应用迁移到微服务. ... Microservice With Docker

丨云无界丨 数未来丨容器与微服务专题论坛

‣ Law of holes: if you find

yourself in a hole, stop digging

停止挖掘

Page 11: 容器与微服务专题论坛 - community.qingcloud.com...容器与微服务专题论坛 丨云无界丨 数未来丨 ... 单体应用迁移到微服务. ... Microservice With Docker

丨云无界丨 数未来丨容器与微服务专题论坛

‣减小单体式应用复杂度的策略是

将表现层和业务逻辑、数据访问

层分开

分离前端和后端

Page 12: 容器与微服务专题论坛 - community.qingcloud.com...容器与微服务专题论坛 丨云无界丨 数未来丨 ... 单体应用迁移到微服务. ... Microservice With Docker

丨云无界丨 数未来丨容器与微服务专题论坛

‣从单体应用中抽取出某些模块成

为独立微服务

抽出服务

Page 13: 容器与微服务专题论坛 - community.qingcloud.com...容器与微服务专题论坛 丨云无界丨 数未来丨 ... 单体应用迁移到微服务. ... Microservice With Docker

丨云无界丨 数未来丨容器与微服务专题论坛

Host

‣ 在不改造原有程序逻辑的基

础上,添加新的功能

‣ 日志收集、监控数据获取、

鉴权、认证、API 重构

Sidecar设计模式

Application Sidecar

Page 14: 容器与微服务专题论坛 - community.qingcloud.com...容器与微服务专题论坛 丨云无界丨 数未来丨 ... 单体应用迁移到微服务. ... Microservice With Docker

丨云无界丨 数未来丨容器与微服务专题论坛

微服务化改造之路

容器化 CI/CD 微服务化 服务网格

Page 15: 容器与微服务专题论坛 - community.qingcloud.com...容器与微服务专题论坛 丨云无界丨 数未来丨 ... 单体应用迁移到微服务. ... Microservice With Docker

丨云无界丨 数未来丨容器与微服务专题论坛