【发布时间】:2014-03-24 11:39:18
【问题描述】:
我有以下场景,其中一个 Amazon EC2 服务器集群在表示层上工作,这些服务器通过 Amazon Elastic 负载均衡器将请求传递给其他 EC2 服务器集群(业务层)。
新要求是:业务层的服务器将负责一些任务而不是所有任务,例如类型一的服务器将服务于类型 1、2、3 的请求。类型 2 的服务器将服务类型 4、5、6 的请求。等等。
在 Amazon AWS 中实现此逻辑的最佳方法是什么,我是否需要为每种类型配备一个弹性负载均衡器,我可以将路由逻辑放在一个负载均衡器中,还是我必须做其他事情?
谢谢
【问题讨论】:
-
这些任务是否用于在表示层构建页面?还是他们习惯于处理用户数据?如果是后者,那么我建议使用 Amazon SQS 并以这种方式分配您的任务。在这个设置中,每个集群都会监听一个单独的 SQS 队列。
-
感谢您的帮助,实际上来自业务层的结果将用于构建页面。但是你说的是这种分离背后的原因之一,因为其中一些任务不应该在线,我的意思是你可以把它们放在SQS中,然后再得到结果。
-
我目前正在使用的一种方法是使用 Apache Thrift 为系统的在线部分创建分布式系统。
标签: amazon-web-services amazon-ec2 load-balancing