问题描述:
我有2个EC2实例,位于欧洲和北美地区。现在我已经设置了Route 53,用Weighted Round Robin record set
将用户请求定向到这些服务器当用户被定向到一个服务器并创建会话时,下次解析域名时,它可以直接指向没有会话的其他服务器。 (例如,用户登录并单击另一个链接并且必须再次登录)
思想:
我可以使用负载均衡器来确保两台服务器的会话粘性,但在这种情况下,无法设置加权循环DNS路由。
我还可以增加DNS响应的TTL,但它几乎消除了WRR的影响。
或者我可以配置服务器来共享会话(我不知道如何。服务器是Ofbiz server),我不确定这是不是很好。
问题:
在Amazon Web Service Route 53上使用加权循环记录时,有没有办法维护用户会话?
非常感谢!
答案 0 :(得分:0)
DNS循环法适用于短期TCP连接(例如执行查询)。但是,如果要提供更长的会话,请确保在客户端和服务器之间具有更长寿命的会话。您可以在服务器和客户端之间使用HTTPSession,并且Connection将保持打开状态,直到会话过期。
正如您所提到的,增加TTL无法解决问题,因为您可以将TCP连接设置为接近一个DNS响应的到期时间,并在下次从新的DNS响应中获得不同的IP地址时。
如果您因任何原因不想使用HTTPSession,最好使用Elastic Load Balancing (ELB)为您做同样的事情。