问题标签 [amazon-sqs]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
7 回答
58129 浏览

amazon-web-services - 在开发过程中模拟 Amazon SQS

我对使用 Amazon SQS 开始一些开发非常感兴趣,也许 SimpleDB 也是如此,我的问题是,是否有任何开源解决方案可以模仿该功能,仅用于开发目的。我已经遇到过用于创建 EC 式云的 Eucalyptus 项目 ( http://open.eucalyptus.com )。

我在谷歌上没有取得任何成功,我怀疑这是因为进入成本太便宜了,但是,有人知道这样的事情吗?

0 投票
1 回答
613 浏览

ruby-on-rails - 使用 RightScale right_aws GEM 的 Sqs 与 SqsGen2

我正在尝试将 right_aws (1.10.0) GEM 与 Rails 一起使用,并且我已将问题简化为 3 行 irb 会话。以下作品

虽然这失败了

NameError: uninitialized constant RightAws::SqsGen2. 我在 GEM 源代码中看到了类定义,文档很旧但看起来很准确,但我不知道我做错了什么。

当您使用它时,如果我正在构建新的东西,是否有任何理由要使用旧界面?

0 投票
5 回答
15670 浏览

c# - 使用 Amazon SQS 的最佳实践 - 轮询队列

我正在设计一个为我们的电子商务网站发送电子邮件的服务(订单确认、警报等......)计划是有一个“SendEmail”方法,它生成一个代表要发送的电子邮件的 XML 块,并坚持它在 Amazon SQS 队列上。我的网络应用程序和其他应用程序将使用它来“发送”电子邮件。

然后,我需要一种检查队列并实际发送电子邮件消息的方法。(我知道我将如何发送电子邮件)

我很好奇“轮询”队列的最佳方式是什么?

我应该创建一个 Windows 服务,并使用 Quartz.net 之类的东西来安排它每隔 x 分钟检查一次队列吗?有没有更好的方法来做到这一点?

0 投票
2 回答
3492 浏览

c# - 如何确定字符串的大小并压缩它

我目前正在使用 C# 开发一个使用Amazon SQS的应用程序 消息的大小限制为 8kb。

我有一个类似的方法:

在这个方法中,我想首先压缩消息(大多数消息是作为 json 传递的,所以已经相当小了)

如果压缩后的字符串仍然大于 8kb,我会将其存储在 S3 中。

我的问题是:

如何轻松测试字符串的大小,以及压缩它的最佳方法是什么?我不是在寻找尺寸的大幅减小,只是一些简单易用的东西 - 并且易于在另一端解压缩。

0 投票
5 回答
3154 浏览

php - 让 PHP 脚本循环永远在队列系统中执行计算工作

目前我有一个在我的服务器上永久运行的 perl 脚本,检查 SQS 以获取要计算的数据。这个脚本已经运行了大约 6 个月,没有任何问题。

所以,现在我想切换到 PHP 的 CLI,并让脚本永远循环在那里。主要是因为我更熟悉 PHP。

基本上,

该脚本将执行 shell_exec("/shell_script.sh"); 处理最多可能需要 2 个小时。这会触发最大执行时间或类似情况吗?

这是“可以”做的吗?如果没有,有什么替代方案?

0 投票
1 回答
1886 浏览

php - 如何在 PHP 中的 SOAP WSDL 中的不同端口之间进行选择?

Amazon AWS SQS WSDL(位于https://sqs.us-east-1.amazonaws.com/doc/2009-02-01/QueueService.wsdl)列出了具有不同“地址”的多个“端口”(靠近底部文件),它指定服务的 HTTP 和 HTTPS 地址。

使用 PHP SOAP 对象:

运行该代码会给出“错误:后向兼容的 SOAP 身份验证所需的 aws:Client.RequiresSSL-SSL 连接。”;它使用第一个“端口”(HTTP 端口)联系 AWS 服务,这种身份验证不允许这样做。

如果我在 之前添加一个$sc->__setLocation('https://queue.amazonaws.com');(从 WSDL 文件复制和粘贴的 URL)行__soapCall,它可以正常工作,但是我如何告诉 SoapClient 对象使用 WSDL 中的另一个端口,而不是将其作为静态字符串提供,在万一他们改变了HTTPS URL呢?

0 投票
1 回答
1502 浏览

api - 来自 EC2 实例的 Amazon SQS 区域

如果我从 EC2 实例创建 SQS 队列,但未在 API 调用中指定区域,则将在哪个区域创建队列。

当我跑

boto.sqs.regions()

我从一台非 ec2 机器上得到了 4 个区域,我得到了

[RegionInfo:us-east-1, RegionInfo:eu-west-1, RegionInfo:us-west-1, RegionInfo:ap-southeast-1]

从我得到的亚太地区的 EC2 机器上

[RegionInfo:us-east-1, RegionInfo:eu-west-1, RegionInfo:us-west-1]

Amazon 是否根据 EC2 实例区域设置 SQS 的区域。有没有办法访问其他区域队列?

我正在使用 python Boto 库。

0 投票
3 回答
1626 浏览

php - 让 PHP 脚本永远运行,访问队列

另请参阅让 PHP 脚本循环永远从队列系统执行计算作业,但这并不能回答我的所有问题。

如果我想永远运行 PHP 脚本,访问队列并做作业:

  1. 内存问题的可能性是什么?如何避免它们?(任何冲洗功能或我应该使用的东西?)

  2. 如果脚本由于某种原因死了怎么办?什么是自动重新启动它的好方法?

  3. 启动脚本的最佳基本方法是什么。由于它永远运行,我不需要 cron。但是我该如何启动它呢?(另见 2。)

0 投票
2 回答
242 浏览

php - 使用 php 遵循机制:使用什么策略?

我正在尝试建立一个类似推特的关注机制。用户采取行动。我们列出所有用户的关注者,然后用一些信息填充他们的所有流。由于这可能需要一些时间(如果您有 10,000 个关注者,即 10,000 个流要插入信息,即可能有 10,000 个 SQL 调用),我想确保这是在后台完成的,而采取行动的用户可以去继续他的生活。

所以,我正在考虑的策略是这样的:

  • 用户采取行动。
  • php 脚本打开另一个 php 脚本,它将完成所有工作,这可能需要一两秒钟。
  • 同时,采取行动的用户可以继续他们的生活,他们的脚本只是继续,而且速度很快。

想法?我也尝试过使用队列,比如 SQS,但这种方法听起来也可以吗?另外,它的优势(对我来说)是更容易在本地测试并且更容易在非 ec2 主机上运行。

如果这是一个好方法,我将如何从 php 脚本中打开 php 脚本?是否可以像(如果 php 脚本位于 url)那样简单地获取该脚本所在的 url?

0 投票
1 回答
4852 浏览

php - 使用 EC2 压缩 S3 文件

我正在尝试使用 EC2 压缩存储在 S3 存储桶中的一些文件。我已经成功地让 SWFUpload 与 PHP 一起工作并将文件上传到 S3。我读到压缩 S3 文件而不产生巨额传输成本的最佳方法是使用 EC2 处理 S3。经过大量努力,我设法让 EC2 服务器运行并通过 SSH 连接到其中,但现在我不知道从这里做什么。

压缩 S3 文件并将它们放回存储桶的最佳方法是什么?

理想情况下,用户的批量上传会触发 SQS,然后我会每天启动一次 EC2 服务器以将它们全部压缩并交回 S3 进行下载。不知道从这里去哪里。想法?