Amazon web services 如何在Amazon Sqs/Sns中创建主题
我有一个进程,它将一些数据(json)发布到Aws Sqs上的队列中。另一个进程从该队列中读取。这一切都很好 现在,我想创建一个主题,它可以被多个进程监听,并且数据被传送到所有进程。例如,Activemq和许多其他消息服务器都具有创建主题的功能。我在AWS上找不到这样的东西。我能找到的最接近的是AWS SNS 据我所知,AWS-SNS允许多个客户端订阅一个主题。但是订阅的类型可以是电子邮件、Http或Sms等等。。。这真的不符合我的目的。我希望像Sqs一样在我的所有客户机中接收json数据Amazon web services 如何在Amazon Sqs/Sns中创建主题,amazon-web-services,amazon-sqs,amazon-sns,Amazon Web Services,Amazon Sqs,Amazon Sns,我有一个进程,它将一些数据(json)发布到Aws Sqs上的队列中。另一个进程从该队列中读取。这一切都很好 现在,我想创建一个主题,它可以被多个进程监听,并且数据被传送到所有进程。例如,Activemq和许多其他消息服务器都具有创建主题的功能。我在AWS上找不到这样的东西。我能找到的最接近的是AWS SNS 据我所知,AWS-SNS允许多个客户端订阅一个主题。但是订阅的类型可以是电子邮件、Http或Sms等等。。。这真的不符合我的目的。我希望像Sqs一样在我的所有客户机中接收json数据 这是
这是可以实现的吗?如果是,如何订阅?您可以将多个SQ订阅到单个SNS主题中: 然后将分发给所有人
另一种选择是使用动觉——但设置起来更困难。在那里,您还可以从流中读取多个客户端。amazon mq是一个托管的活动mq服务。也许这将有助于满足您的需求?谢谢您的回答,但要使这项功能发挥作用,我必须首先在sqs中创建多队列。这是没有道理的。因为如果我必须创建多个队列,那么一个主题的目的是什么。我可以向所有人公布我自己Queues@pvpkiran-当然,您必须创建多个SQS队列,每个客户机都需要具有唯一的“消息存储”,以便进行处理。其目的是有一个中心点(SNS主题),您可以在这里发布消息,并将其分发给所有订阅(在您的情况下是SQS)。当你再添加一个消费者时,你只需订阅SNS主题即可。如果您自己发布所有消息,那么您必须自己完成所有这些逻辑。到底是什么阻碍了你为每个客户创建SQS并订阅单个SNS主题?谢谢你的反馈。我认为这是额外的开销。我需要创建一个主题和n个队列来实现这一点,而在其他JMS消息传递系统(如activemq或rabbitmq)中,我可以通过创建主题来实现同样的目标。我更喜欢那个而不是这个。这里有两个多运动部件。SNS,SQS.@pvpkiran-如果我对您的用例了解得更多,那会有所帮助。SNS/SQS非常健壮,这是有原因的,如果您想100%保证任何已发布的消息都能到达所有SQS队列,并且在处理之前一直保持在那里,那么您就需要使用它。假设您有一个从SQS
Y
读取的服务X
,并且您希望将其放大,因此您可以放大10个服务X
实例。如果将消息发布到Y
,是希望所有10个实例都获得此消息,还是只希望服务X
的一个实例来处理此消息?