Azure服务总线相当于AWS
我正在将应用程序从c#移动到node.js。 我是来自.net背景的node.js新手。 我正在考虑将域驱动的devise模式合并到应用程序中。 发展,使我有了有限的环境和微服务的概念。 我想使用aws作为我的云提供商,但是在确定使用哪个工具来处理命令和事件处理时遇到问题? Azure有服务总线,这似乎工作很好。
是否有相当于aws的服务总线,或者我应该看看使用SQS?
Azure服务总线没有直接的等同,但可以通过结合SQS和SNS来替代。 让我们来看看。 Azure服务总线由两部分组成:
- 队列 。 在大多数情况下,SQS(简单队列服务)将提供适当的replace,但请记住,Azure服务总线队列是先进先出(FIFO),而SQS队列不保证消息的顺序。
- 主题和订阅 。 这用于PubSub(发布/订阅)事件驱动的devise,当你需要传递相同的消息给多个消费者时。 SQS不能这样做,但SNS(简单通知服务)就是这种types的服务。
如果SQS适合您的需求,那么它与平台很好地结合在一起:
亚马逊简单队列服务(SQS)是一种快速,可靠,可扩展,完全托pipe的消息队列服务。 Amazon SQS使解耦云应用程序的组件变得简单且经济高效。 您可以使用Amazon SQS传输任何数量的数据,而不会丢失消息或要求其他服务始终可用。 Amazon SQS包括具有高吞吐量和至less一次处理能力的标准队列,以及提供FIFO(先进先出)交付和准确处理一次的FIFO队列。
此外,市场上还有企业服务总线(HVM),但似乎只有Windows。
但是,您不必仅使用直接集成到托pipe提供商平台的解决scheme。 你可以在AWS上运行任何东西。 例如,您可以使用Redis,RabbitMQ,ZeroMQ,ActiveMQ,NSQ等工具。
看到:
- https://redis.io/
- https://www.rabbitmq.com/
- http://zeromq.org/
- http://activemq.apache.org/
- http://nsq.io/
在这里find更多的项目和服务:
- 消息AWSCognito.CognitoIdentityServiceProvider.CognitoUserPool不是aws lambda中的函数
- 在弹性beanstalk的container_commands中执行命令时没有path
- 将string附加到AWS Lambda中的文本文件Nodejs
- 我可以在Amazon EC2的一个实例上运行多个应用程序吗?
- AWS SDK与DynamoDB和putItem有关
- AWS node.js没有创buildS3存储桶?
- 为什么nodemailer不能在AWS服务器-NodeJS上工作
- 如何从部署在AWS Elastic Beanstalk上的node.js express应用程序获取客户端ip?
- 如何在AWS lambda中响应非拉丁字符?