我计划在 Amazon Web Services 上安装 2 个t2.micro
Linux 实例,其中 1 个 MySQL DB和 1 个 Elastic Load Balancer。我将在其上运行 PHP 程序。db.t1.micro
我的问题是:我是否需要将会话写入数据库,以便在两个实例之间共享?或者我可以将 Elastic LB 视为透明的?
答案1
由于您的应用程序似乎不支持通过会话管理进行集群以在集群间共享会话,因此我建议您为负载均衡器配置会话粘性。这会将用户的会话绑定到特定实例。然后,所有用户的请求将仅由该实例处理。
您有两个选择。您的应用程序支持会话,因此您可以直接告诉负载均衡器使用哪个应用程序 cookie 来跟踪每个用户请求的实例。
否则,当负载均衡器本身向响应中插入特定的会话 cookie 以将用户的后续请求绑定到同一实例时,您可以启用所谓的基于持续时间的会话粘性。
以下屏幕截图不言自明。您可以从 AWS Web 控制台 -> 负载均衡器描述选项卡 -> 编辑端口配置配置会话粘性
:
更多详情请访问这一页。