28、微服务扩展:负载均衡、数据库扩展与缓存策略

微服务扩展:负载均衡、数据库扩展与缓存策略

1. 负载均衡

当需要服务具备弹性时,应避免单点故障。对于暴露同步 HTTP 端点的典型微服务,实现这一目标的最简单方法是让多个主机运行微服务实例,并置于负载均衡器之后。对于微服务的消费者来说,他们并不知道自己是在与一个还是一百个微服务实例进行交互。

负载均衡器有各种类型,从大型昂贵的硬件设备到像 mod_proxy 这样的基于软件的负载均衡器。它们都具备一些关键功能:
- 根据某种算法将发送给它们的调用分发到一个或多个实例。
- 当实例不再健康时将其移除,并在其恢复后重新添加。

部分负载均衡器还提供一些实用功能,例如 SSL 终止。在这种情况下,进入负载均衡器的 HTTPS 连接在到达实例本身时会转换为 HTTP 连接。过去,管理 SSL 的开销很大,因此让负载均衡器处理这个过程相当有用。如今,这更多是为了简化运行实例的各个主机的设置。然而,使用 HTTPS 的目的是确保请求不会受到中间人攻击。如果使用 SSL 终止,可能会使自身面临一定风险。一种缓解措施是将微服务的所有实例置于单个 VLAN(虚拟局域网)内。VLAN 是一种隔离的网络,外部请求只能通过路由器进入,在这种情况下,路由器也是执行 SSL 终止的负载均衡器。VLAN 外部与微服务的通信通过 HTTPS 进行,而内部则使用 HTTP。

AWS 以 ELB(弹性负载均衡器)的形式提供支持 HTTPS 终止的负载均衡器,并且可以使用其安全组或虚拟专用云(VPC)来实现 VLAN。此外,像 mod_proxy 这样的软件也可以作为软件负载均衡器发挥类似作用。许多组织使用硬件负载均衡器,但这些设备难以自动化。在这种情况下,建议在硬件负载均衡器

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值