前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SAP Spartacus 和 Sticky session 相关的话题

SAP Spartacus 和 Sticky session 相关的话题

作者头像
Jerry Wang
发布2023-06-20 14:47:52
1540
发布2023-06-20 14:47:52
举报

当 Commerce 后端运行多个Pods/节点时,当连续的请求过快到达时,后端将无法在集群中发送缓存失效通知。此外,如果多个请求分散到多个节点上,会产生延迟和不必要的资源消耗。

Spartacus 尽可能与单个后端进行交互,以服务于单个客户端。这通常被称为 sticky session.

Sticky session(粘滞会话)是一种负载均衡策略,用于在多个服务器之间分配客户端请求。在具有多个Java应用服务器的集群中,负载均衡器将客户端请求分发到不同的服务器上,以实现性能优化和高可用性。然而,这可能会导致一个问题:当一个客户端需要与特定服务器上的会话(例如,一个购物车或登录会话)进行交互时,由于负载均衡器将请求分发给不同的服务器,会话数据可能不会保持一致。

为了解决这个问题,引入了粘滞会话(sticky session)策略。粘滞会话策略确保同一个客户端的所有请求都会被分配到之前处理其请求的同一个服务器。这通常是通过将客户端的会话标识符(例如,JSESSIONID)与特定服务器关联来实现的。负载均衡器在将请求分发到服务器之前,会检查请求中的会话标识符,并将请求路由到与该标识符关联的服务器。

粘滞会话确保了会话数据的一致性,但可能导致服务器负载不均衡。如果一个服务器上的用户会话特别活跃,那么这个服务器的负载可能会变得很高,而其他服务器则相对较低。因此,在选择粘滞会话策略时,需要权衡会话数据一致性和负载均衡的需求。

CCv2在一定程度上为此做了准备。它在响应中添加了一个 ROUTE cookie. 然而,该cookie无法进行配置,并且没有SameSite策略。这意味着解耦的前端商店很可能无法使用它,因为它是在不同的域上操作。

为了启用 ROUTE cookie,必须执行以下操作:

  • 在http客户端中使用withCredentials: true选项,以便在每个请求中发送cookie。
  • 使用额外的CORS过滤器(Allow-Origin-With-Credentials:true)配置 Commerce backend,以确保cookie通过过滤器。
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2023-06-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
负载均衡
负载均衡(Cloud Load Balancer,CLB)提供安全快捷的流量分发服务,访问流量经由 CLB 可以自动分配到云中的多台后端服务器上,扩展系统的服务能力并消除单点故障。负载均衡支持亿级连接和千万级并发,可轻松应对大流量访问,满足业务需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档