如何知道我是不是需要使用 AWS Elasticache 和 AWS Elastic Load Balancing?

Posted

技术标签:

【中文标题】如何知道我是不是需要使用 AWS Elasticache 和 AWS Elastic Load Balancing?【英文标题】:How to know if i need to use AWS Elasticache and AWS Elastic Load Balancing?如何知道我是否需要使用 AWS Elasticache 和 AWS Elastic Load Balancing? 【发布时间】:2016-12-12 12:47:51 【问题描述】:

我对缓存有点困惑。

假设我想建立一个简单的聊天网站,用户可以登录/注册和上传照片。

我打算将上传的文件保存在 amazon s3 中。 dynamodb 中的用户数据。

那么我应该将哪种类型的数据放入 elasticache 以提高我的网站性能?

另一个问题,如果我使用弹性beantalk,我是否需要同时使用弹性负载平衡?

我读到 Elastic beanstalk 是 EC2 的自动化版本,因此无需关心手动流程,这是否涉及 ELB?

感谢您的帮助

【问题讨论】:

【参考方案1】:

我认为您对术语感到困惑。你所说的技术是完全不同的东西。

Elasticache 是一种托管的 Memcached/Redis 解决方案。您将其用于缓存目的,而不是用于持久数据

Elastic Load Balancing 是一种托管负载平衡解决方案。就像 Haproxy。如果您想利用 AWS 的高可用性和可扩展性功能,您需要它。您创建一个自动扩展组,它在需要时生成或终止 EC2 实例(根据您将设置的规则),并且自动扩展组从 ELB 附加或分离 EC2 实例。如果您只将应用程序安装到一个实例上,您不必担心,但如果您这样做,您就是在做错误,这不是 AWS 的工作方式。去使用更便宜、更方便的 VPS 公司吧。

Elastic Beanstalk 是一种包装服务。它旨在抽象所有这些 EC2 东西的复杂性。它就像 Heroku 或 Google App Engine,您将应用程序文件(或 docker 映像)提供给它,它会为您安装所有内容。

如果您是 AWS 的新手,我建议您从 Elastic Beanstalk 开始,了解它在后台的工作原理以及将为您创建的资源类型。学习基础知识后,您可以创建自己的堆栈并对其进行更多自定义。但 Elasticbeanstalk 也是可生产的产品。你可以相信它。

【讨论】:

感谢您的回复。所以如果我理解得很好,如果我使用 Elastic Beanstalk,那么我不需要使用负载均衡器?如果是聊天应用程序,应该缓存什么样的数据以增加应用程序响应时间?媒体(照片、视频) ?用户数据 ?还有什么?

以上是关于如何知道我是不是需要使用 AWS Elasticache 和 AWS Elastic Load Balancing?的主要内容,如果未能解决你的问题,请参考以下文章

我是不是需要 .ebextensions 才能使用 DynamoDB 或 SNS 等 AWS 资源?

如何在我的 AWS RDS 上使用数据存储? [关闭]

AWS Amplify,如何检查用户是不是登录?

如何在 aws 工作区窗口中运行反应本机应用程序

如何使用 AWS CLI 找到我的 AWS S3 存储桶的确切字节数?

如何使用 S3 在 aws 中设置静态站点 - 是不是有视觉指南?