aws ec2 选择可用区_AWS Messaging Services:选择合适的服务

aws ec2 选择可用区

1. AWS消息服务

AWS Messaging服务使云中相似和不同的软件系统能够异步通信和交换信息。 这些软件系统可能不兼容且使用不同的语言,也可能在不同的平台上。 AWS消息传递服务具有高度可用性,高度可扩展性和高度可靠性。 AWS支持针对不同类型用例的多种消息传递服务。 在本文中,我们将讨论各种AWS消息服务,并根据应用程序需求选择合适的消息服务。

消息服务允许通常不兼容且在不同平台上以不同编程语言开发的不同软件系统进行通信和交换信息。

2. Amazon SQS(简单队列服务)

Amazon SQS是一种分布式队列Web服务,用于在软件系统之间异步交换消息。 SQS用于开发具有解耦组件的大规模分布式系统,而无需担心创建和管理队列。 SQS有两种类型,标准和先进先出。 FIFO队列维护生成和使用的消息的顺序,并提供一次精确的传递机制。 标准队列尝试保留订单,但很灵活,并且至少提供一次交货。 “标准队列”中的消息可以多次传递,“标准队列”提供高吞吐量。

随着请求数量的增长,Amazon SQS会水平扩展。 SQS中的消息是使用服务器端加密进行加密的,并且在队列中的生命周期内都是安全的。

如果您的应用程序需要更快的消息处理速度,但是不关心消息顺序或消息的重复发送,则“标准队列”是最佳选择。 为了保证订单的准确性以及一次交货,请使用FIFO队列。 当使用者接收并处理该消息时,该消息将保留在队列中,直到将其显式删除或消息保留时间到期为止。 Amazon SQS设置消息的可见性超时 (默认为30秒,最长为12小时),以防止其他使用者再次处理同一条消息。

在一对一消息传递,发送电子邮件,表单和文件处理的情况下,SQS最有用。

AWS Messaging Services-SNS订阅者
SNS订户

Amazon SNS提供加密的主题,以保护您的消息免遭未经授权的匿名访问。 将消息发布到加密主题后,将立即使用AES-GCM算法和由密钥管理服务发布的客户主密钥对消息进行加密。 消息在传递到订阅端点时被解密。 在删除SNS主题之前,请确保首先删除该主题的所有订阅。 使用SNS,可以将消息从AWS发送到各种平台,例如iOS,Android,Java,Node Js,Python,.NET等SDK。

SNS最适合用于事件通知,将消息发布到多个订户,向每个SQS队列发送专用消息等用例。

3.1 SNS消息

推送到SNS主题的邮件将具有以下部分。

  • MessageId –消息的唯一ID
  • 时间戳–消息创建时间戳
  • TopicArn –消息发布到的主题
  • 类型–交付类型
  • UnsubscribeUrl –取消订阅该主题的链接
  • 消息–消息有效负载
  • 主题–主题字段
  • 签名–邮件的Base64编码签名
  • 签名版本– SNS签名版本

3.2 SNS局限性

  • 来自SNS的消息可能会多次传递
  • 在订户失败的情况下,可以将消息传递配置的次数。

4. Amazon MQ

Amazon MQ是Apache ActiveMQ的托管消息传递服务。 AWS管理ActiveMQ的配置,设置,修补和维护。 使用标准API和协议(例如JMS,NMS,AMQP,STOMP,MQTT和WebSocket),可以轻松迁移现有应用程序并将其连接到Amazon MQ。

Amazon MQ提供了消息的高可用性和持久性。 消息生产者和使用者之间的Amazon MQ延迟非常少(单位为毫秒)。 放置在Amazon MQ中的消息始终在多个可用区之间冗余存储。 Amazon MQ支持分布式事务。 代理名称在一个AWS账户中应该是唯一的,每个代理最大存储容量为200GB。

将消息放在Amazon MQ上时,可以触发Lambda函数。 在混合云环境中,可将本地数据中心中的ActiveMQ与云上的Amazon MQ集成在一起以交换消息。 请参阅此文档,以将Java应用程序与Amazon MQ连接以及创建消息生产者和使用者。

aws ec2 选择可用区_AWS Messaging Services:选择合适的服务

4.3 Amazon MQ限制

  • 每个AWS账户的每个代理实例类型的代理数量限制为20
  • 限制为每个代理的安全组数为5
  • 每个经纪人的存储容量限制为200GB

5.亚马逊Kinesis

Amazon Kinesis是一项完全托管的Web服务,用于实时处理大数据。 Kinesis有助于收集,处理和分析实时流数据,以深入了解信息。 使用Kinesis,可以在数据到达并立即响应时对其进行分析。 使用Kinesis,可以分析视频,音频,应用程序日志,网站点击流和IoT遥测。 Amazon Kinesis具有高度的可扩展性,并且可以处理几乎任何数量的流数据并处理来自成千上万个来源的数据,而几乎没有延迟。 Kinesis每小时可以处理来自各种数据流的TB级数据。 Kinesis保持消息的顺序。

AWS Messaging Services-Kinesis集成
运动整合

Amazon Kinesis最适合用于诸如收集和分析温度,湿度传感器等传感器数据之类的用例。它还可以可靠地吸收所有市场数据并建立实时分析。

5.1运动学限制

  • 数据Blob大小限制为1 MB
  • 默认情况下,消息会在24小时后从信息流中删除,但最多可以延长7天

6.亚马逊Pinpoint

Amazon Pinpoint是托管在Amazon Web Services上的完全托管的营销和分析服务。 使用Amazon Pinpoint营销团队可以获取见识以加强活动并确定如何与客户群进行有效沟通。 使用Amazon Pinpoint,营销人员可以定义活动计划,以向应用程序最终用户发送定向消息。

Amazon Pinpoint可以与移动和Web应用程序集成,以深入了解客户如何与您的应用程序进行交互。 它还有助于发送有针对性的电子邮件,SMS,推送通知和语音消息,还可以跟踪客户如何响应您的消息,即已发送,打开或单击的消息数。 这对于发送促销或教育内容以吸引和留住用户很有用。

Amazon Pinpoint有用的一些用例是:

  • 汇总所有营销活动的数据
  • 提供有关您安装了应用的设备的信息的人口统计图
  • 有关用户参与度和广告系列指标的分析
  • 有关应用程序使用时间和客户保留率的分析
  • 收入图表,提供有关客户购买及其产生的收入的详细信息
  • 用户身份验证分析

7.亚马逊物联网代理

AWS IoT消息代理是一项托管的高吞吐量发布者/订阅者代理服务,可用于向AWS IoT收发消息。 客户端将有关主题的消息发送到AWS IoT。 该消息代理将消息发送给该主题的所有注册客户端。 使用AWS IoT,可以以低延迟安全地传输所有IoT设备之间的消息。 根据消息量,可以自动缩放消息代理。 AWS IoT支持一对一消息传递或百万广播通知系统。 AWS文档中列出了更多AWS IoT功能。

翻译自: https://www.javacodegeeks.com/2019/03/aws-messaging-services-choosing-right-service.html

aws ec2 选择可用区

来源:dnc8371

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2020年6月5日
下一篇 2020年6月5日

相关推荐