我有以下任务要使用AWS栈实现:
定期触发一个作业并将消息放入队列(SQS)。工作人员接受此任务,并在此基础上需要创建其他任务(大约1-10 K任务)。所有这些任务也被放到另一个队列中,还有其他工作人员来处理这些任务。
可以用以下方式显示这些流程:
定期任务 - > SQS-> woker_1(创建更多任务) - > SQS - > workers_2
基于项目惯例和官僚主义,需要一些时间为worker_1创建两个单独的服务,这些服务可以监听周期性任务并创建细粒度的任务,并且只需处理特定任务的工人_2,制作码头图像,CI工作等等......并部署它。
所以,这是交易:
1.花费额外时间并创建两个单独的服务。另一方面,这些服务可能非常简单。即使有两个单独的项目也存在疑问。
2.将此作为一个服务,将消息放入同一队列,并且还将侦听同一队列中的消息并为以下方法工作:worker_1和worker_2。
感谢任何建议或想法!
答案 0 :(得分:2)
我不认为可以有一个“正确”的答案,你已经有两个选项的优缺点列表。我想到的一些额外的事情: