5、云原生时代微服务架构设计与实践

云原生时代微服务架构设计与实践

1. 微服务与云原生概述

在云原生时代,微服务开发框架变得至关重要。例如,有一个强大的微服务开发框架,它提供了许多具备服务治理能力的组件,具体如下:
- Eureka:用于服务注册和发现。
- Zuul:负责请求路由和充当网关。
- Ribbon:实现负载均衡。
- Hystrix:进行熔断和容错管理。

这个框架几乎能满足我们所有需求,但本质上它仍以库的形式运行。要赋予系统这些治理能力,需要在代码或配置层面引入这些组件并打包部署,这涉及一定的学习成本和维护工作。传统引入服务治理的方式是实现功能、集成(修改代码或配置)并进行维护。

在云原生环境中,服务治理尽可能由基础设施承担。比如,将应用容器化并交给Kubernetes等编排工具管理后,服务注册和发现问题就能得到解决。为每个服务添加一个名为Service的对象,它会自动为应用分配虚拟IP地址(VIP),以便在集群内访问。服务之间只需通过Service对象的名称就能相互访问,服务发现由Kubernetes的DNS服务处理。同时,Service对象后面可以匹配多个应用实例(Pods),通过kube - proxy实现负载均衡,这些操作都无需对应用进行代码级更改,对应用是透明的。我们的关注点也会转向如何定义Service对象、如何暴露服务等。

不过,在某些情况下也存在缺点。当应用部分迁移到云端,这些服务交给Kubernetes集群管理后,需要与遗留系统交互,跨集群访问会带来技术难题,需要付出努力去解决。

2. 部署和发布的变化

软件开发生命周期中,问题不会因工具、技术和架构的变化而消失。迁移到微服务架构

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值