带负载均衡器的 AWS Magento

AWS Magento with Load Balancer

我计划为 Magento 使用 Amazon EC2 服务器。但我对 AWS 还很陌生。

我知道我必须使用弹性负载均衡器 (ELB) 来平衡两个或多个 EC2 实例之间的负载。 - 这很重要,因为很有可能我的主实例每天有 1-2 小时的加载速度。

我知道我无法将一个 EBS 连接到两个 EC2 实例。但是我必须在两个(或更多)EC2 实例上拥有完全相同的数据。 - 一种可能的解决方案是制作实例 1 的快照并将其启动到实例 2。但由于数据变化非常快(例如缓存、新产品...),我认为这可能不是最佳解决方案。

我听说我可以将我的 S3-Storage 挂载到我的实例,然后将其用作 "global" 存储,但据我从不同的文章中了解到,S3 的速度不够快,无法快速查看-存储服务器。

顺便提一下事实:该服务器每小时将有 200-300 名访客,但也可能达到 500-1000 名。

结论:我需要一个存储服务器,它足够快以共享大量数据(图像、js、css、php)并且可以挂载到多个实例。我该如何巧妙地做到这一点?

您好 气泡

新的 EFS 服务(NFS 共享)可以为您提供简单的解决方案,但与其他替代方案相比,它的成本较高。

当您处理多个实例时,您的实例应该遵循无共享架构。这意味着,任何唯一的应用程序数据都不会存储在实例上。

应用程序代码可以存储在实例上,你应该有一个发布过程来在实例发生变化时自动更新它。

缓存数据是可以重新生成的,理想情况下应该是像memcached这样的内存缓存。

应用程序数据(产品图片等)应存储在 S3 上。您还可以从 S3 提供服务(它可以从您的 Web 服务器卸载一些工作)。我相信有 Magento 的插件可以在 s3 上存储图像。

数据库应位于 Web 服务器实例之外的服务器上。您可以使用 RDS 快速设置它。