当前位置:  开发笔记 > 前端 > 正文

AWS SQS用于从AWS外部接收消息

如何解决《AWSSQS用于从AWS外部接收消息》经验,为你挑选了1个好方法。

我的公司有一个消息传递系统,它以JSON格式发送实时消息,它不是在AWS上构建的,也不会与AWS有任何VPN连接.

我们的团队正在尝试使用AWS SQS接收这些消息,然后将DynamoDB处理JSON消息发送到TSV,然后加载到RDS.

但是,根据FAQ,SQS只能从AWS内部接收消息. https://aws.amazon.com/sqs/faqs/

问:谁可以对消息队列执行操作?

只有AWS账户所有者(或账户所有者已委派权限的AWS账户才能对Amazon SQS消息队列执行操作).

为了使用SQS,我能想到的一种方法是创建一个面向公众的EC2实例,它接收消息并传递给SQS.

我的问题是:

    我的想法是否正确?

    如果它是正确的,你可以分享有关如何在这个EC2实例上构建任何应用程序以实现功能的任何细节(我没有应用程序开发的经验,你的见解真的很感激!)

    AWS中是否有更容易/更好的选项可以实现在我的用例中接收消息的目标?

Michael - sq.. 6

    我的想法是否正确?

不,不是.

你在FAQ中错误地解释了(当然有点不清楚)的信息.

SQS可从Internet上的任何位置访问和使用.它唯一暴露的接口是HTTP(S).事实上,从EC2内部,除非EC2实例实际上具有对Internet的出站访问权限,否则无法访问SQS .

文档中提出的观点并不是您需要在AWS内部使用队列,而是需要拥有一组经过授权的AWS凭证才能使用队列.¹

如果您拥有AWS账户,则您拥有凭据,并且可以使用SQS.您无需从"内部"AWS访问队列.

选择离服务器最近的终端(最低延迟),您应该可以从任何地方找到它并且可以访问它.


¹可以将问题配置为在创建后允许匿名访问.(不要这样做,我只是说这是可能的.)FAQ的这一部分似乎是指一个操作的子集,例如创建队列.



1> Michael - sq..:

    我的想法是否正确?

不,不是.

你在FAQ中错误地解释了(当然有点不清楚)的信息.

SQS可从Internet上的任何位置访问和使用.它唯一暴露的接口是HTTP(S).事实上,从EC2内部,除非EC2实例实际上具有对Internet的出站访问权限,否则无法访问SQS .

文档中提出的观点并不是您需要在AWS内部使用队列,而是需要拥有一组经过授权的AWS凭证才能使用队列.¹

如果您拥有AWS账户,则您拥有凭据,并且可以使用SQS.您无需从"内部"AWS访问队列.

选择离服务器最近的终端(最低延迟),您应该可以从任何地方找到它并且可以访问它.


¹可以将问题配置为在创建后允许匿名访问.(不要这样做,我只是说这是可能的.)FAQ的这一部分似乎是指一个操作的子集,例如创建队列.

推荐阅读
路人甲
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有