AWS beanstalk中的工作层和Web层有什么区别

时间:2017-04-09 03:46:16

标签: amazon-web-services elastic-beanstalk

在浏览文档时,我开始了解AWS中的这两层环境,但无法找到它们之间的任何比较。在文档中建议的是,应该为长期运行的任务选择工作环境(以提高Web层的响应能力)。 我几乎无法澄清我的疑虑  1. 两层如何相互不同? (关于执行不同的操作,每个等的服务)  2. 两者如何相互沟通?  (如果我在Web层和后端开发我的前端应用程序     工人层)

1 个答案:

答案 0 :(得分:5)

我认为最重要的区别是工作层实例不运行Web服务器进程(apache,nginx等)。因此,他们不直接回应客户的要求。相反,它们可用于从Web层卸载长时间运行的进程。

这些层通过SQS相互通信。当您的Web实例需要生成后台作业时,它会使用作业详细信息将消息发布到共享队列。在工作器实例上运行的守护程序从队列中读取该项,并将消息POST到应用程序在http://localhost/上公开的端点。

话虽这么说,我认为网络/工作者架构可能在前端/后端"您正在描述的术语。您的Web层完全能够运行Web服务器和应用程序服务器。但是,如果您有后台或异步处理的要求,那么添加工作层可能是有意义的。