体系结构06 可扩展架构

可扩展架构

问题来源

CS/BS架构技术挑战
在这里插入图片描述
在这里插入图片描述

扩展

垂直扩展 Scale Up
硬件提高

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

垂直扩展(更强的硬件) => 水平扩展(更多的硬件)

在这里插入图片描述

实现负载均衡

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
为了避免load balancer失效:增加back load balancer冗余

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
问题:如何解决水平扩展系统中的缓存和会话等状态问题?
每次把请求发到server,server会根据客户端传过来的SESSION ID进行查找。因为客户端总是把前一个Server返回的SESSION ID (因为它总是与前一个Server进行交互)交给后一个Server,而后一个Server不认识这个SESSION ID,所以它会新生成一个SESSION, 所以对客户端来说,之前的SESSION ID其实是无效的
在系统中,如果使用HAProxy来实现负载均衡的话,每一个节点都有两个方面的问题,一个是缓存,一个是会话状态。对于缓存来说的话,整个集群应该通过一种有效的机制,使得所有的计算节点都去共享这个缓存,从而提高缓存的效率,对于会话来说的话,每个节点,它所维护的会话状态应该跟用户发来的请求进行关联,这样才能保证用户的请求发到由某一个跟它之前有过会话的服务器、知道它之前说过什么的服务器,来为这个用户提供服务,从而不会导致一些错误。譬如说不能说你登录之后,原来在购物车里面加的内容刷新一下,发现购物车里面没有了,因为刷新的请求发送到一个新的服务器上去了,那个服务器不知道你购物车里有什么。

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值