问题标签 [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 投票
4 回答
3303 浏览

queue - 排队系统 - 启动多个工人的好方法是什么?

  • 您如何为面向队列的系统设置一个或多个工作脚本?
  • 您如何根据需要安排启动 - 并在必要时重新启动 - 工作脚本?(我正在考虑诸如 init.d/、基于 Ruby 的“上帝”、DJB 的 Daemontools 等工具)

我正在开发一个异步队列/工作系统,在这种情况下使用 PHP 和BeanstalkdD(尽管实际的语言和守护进程并不重要)。任务本身并不太难——将带有命令和参数的数组编码为 JSON,以便通过 Beanstalkd 守护程序进行传输,然后在工作脚本中提取它们以根据需要对其进行操作。

还有许多其他类似的队列/工作者设置,例如StarlingGearmanAmazon 的 SQS和其他更多面向“企业”的系统,例如 IBM 的 MQ 和 RabbitMQ。如果你运行 Gearman 或 SQS 之类的东西 - 你如何启动和控制工作池?问题在于最初的工人启动,然后能够添加额外的额外工人,随意关闭它们(尽管我可以通过队列发送消息以关闭它们 - 只要一些“观察者”不会自动重新启动它们)。这不是 PHP 问题,它是关于直接设置一个或多个进程以在启动时运行的 Unix 进程,或者向池中添加更多工作人员。

循环脚本的bash 脚本已经到位 - 这会调用 PHP 脚本,然后从队列中收集并运行任务,偶尔退出以便能够自行清理(它也可以在失败时暂停几秒钟,或通过计划的活动)。这很好用,在此基础上构建工作进程一点也不难。

获得一个好的工作控制器系统是关于灵活性的,在机器启动时自动启动一个或两个,并且能够在队列繁忙时从命令行添加更多,在不再需要时关闭额外的。

0 投票
5 回答
4283 浏览

ruby-on-rails - Amazon SQS 是这里的正确选择吗?Rails 性能问题

我即将发布一个具有常见网络功能(消息、墙等)的 Rails 应用程序。我想使用某种后台处理(很可能是 Bj)从请求/响应周期中卸载任务。

当用户通过电子邮件邀请朋友加入并获得电子邮件通知时,就会发生这种情况。

我不确定我是否应该使用模型将这些邀请和通知放入我的数据库中,然后每 x 分钟使用一个工作进程处理它,或者我是否应该使用 Amazon SQS,将消息和邀请存储在那里并让我的工作人员从 Amazon SQS 检索它进行处理(发送邀请/通知)。

亚马逊的方法会从我的数据库中卸载,但我想从那里检索消息会更慢。

你怎么看?

0 投票
1 回答
823 浏览

php - Good Amazon Simple Queue Service PHP Library

With all things being equal whats currently the more mature PHP library for Amazon Simple Queue Service? I'm looking for good Object Oriented PHP 5 code. What were your experiences on the library you choice? Any performance problems? I'm building a system that needs to handle handing off messages to an unlimited amount of worker processes. A total of maybe 50,000 messages/data per day.

Thanks

0 投票
1 回答
668 浏览

cloud - 埃斯珀和 SQS

我想知道这里是否有人尝试过使用 Esper 来处理来自云端的东西?特别是亚马逊的简单排队服务。我已经用谷歌搜索了这个,我们知道这是可行的,但是很高兴知道是否有人尝试过。更好的是,有人也尝试过将 Esper 放入云端吗?

0 投票
1 回答
1992 浏览

java - Amazon SQS 消息正文中的无效二进制字符

我有一个将消息发送到 Amazon SQS 队列的 Web 应用程序。Amazon sqs lib 引发“AmazonSQSException”,因为消息包含无效的二进制字符。该消息是从传入的 http 请求中获得的引荐来源网址。这是它的样子:

http://ads.vrx.adbrite.com/adserver/display_iab_ads.php?sid=1220459&title_color=0000FF&text_color=000000&background_color=FFFFFF&border_color=CCCCCC&url_color=008000&newwin=0&zs=3330305f323530&width=300&height=250&url=http%250&url=http% 2Fsearch.php%2FOi8vZG93%2FbmxvYWRz%2FLnppZGR1%2FLmNvbS9k%2Fb3dubG9h%2FZGZpbGUv%2FNTY5MTQ3%2FNi9NeUN1%2FdGVHaXJs%2FZnJpZW5k%2FWmFoaXJh%2FLndtdi5o%2FdG1s%2Fb0%2F > ^FÃ'}úÃ<99>一种«).J

看起来粗体字符是无效字符。有没有一种简单的方法可以过滤掉亚马逊不接受的字符?

以下是亚马逊在消息正文中允许的字符。我不确定应该使用什么正则表达式将无效字符替换为 ''

0 投票
5 回答
3002 浏览

ruby - Ruby1.9 和 Amazon SQS?

是否有用于从 ruby​​1.9 访问 Amazon SQS 的良好库/gem?Amazon ruby​​ 示例和 right_aws 不适用于 ruby​​1.9。

我非常喜欢已知可以在相当重的负载下工作的东西(每天几十万个队列项目或更多)。

0 投票
4 回答
8077 浏览

amazon-ec2 - 在 Amazon Web Services 上开发可扩展视频转码服务器的最佳实践?

在开发允许用户将视频和图像上传到服务器并通过 FFMPEG 转码并存储在 amazon S3 中的应用程序时,人们认为最重要的问题是什么?我有几个选择;

1)在处理文件上传的同一台服务器上安装FFMPEG,当视频上传并存储在EC2实例上时,调用FFMPEG进行转换,完成后将文件写入S3存储桶并处理原始文件。

这是多大的可扩展性?当多个用户同时上传时会发生什么?如何一次管理多个进程?我如何知道何时启动另一个实例并对此配置进行负载平衡?

2) 有一台服务器用于处理上传(更新数据库、重命名文件等)和一台服务器进行转码。同样,管理多个进程的最佳方法是什么?我应该为此查看 Amazon SQS 吗?我可以告诉转码服务器从上传服务器获取文件还是应该将文件复制到转码服务器?我是否应该将所有文件存储在 S3 上,而 SQS 可以从那里读取。我正在尝试尽可能少的流量。

我正在运行一个 linux 机器作为上传服务器,并在其上运行 FFMPEG。

任何有关设置此类配置的最佳实践的建议将不胜感激。非常感谢

0 投票
2 回答
1156 浏览

ruby-on-rails - 向 Amazon SQS 发送 XML 消息

我是 Amazon SQS 和 ruby​​ on rails 的新手。我正在研究一个必须将一些 XML 消息发送到 SQS 的项目。我怎么做?

现在我在 .save 之后的控制器中有这个

并且在模型中

这是我可以将 XML 文件发送到 SQS 的方式还是?

0 投票
4 回答
1709 浏览

php - Amazon SQS 字符编码问题

我正在尝试在 Amazon SQS 的消息正文中插入 ä、á、ó、í、â 等字符。但是这些字符会被转换为 SQS 中的一些其他字符(例如 ä)。有没有办法解决这个问题。

谢谢

0 投票
2 回答
276 浏览

amazon-web-services - 远程控制应用程序的架构和工具?

我正在设计一个远程控制应用程序。通过我的 iPhone 或网络浏览器,我将发送一些命令。很快我的家用电脑就会执行命令并发回结果。我知道有远程桌面应用程序,但我想要一些可编程的、更简单的以及我编写的东西。

我目前的方向是使用 Amazon Simple Queue Service (SQS) 作为消息总线。iPhone 将一些消息放入队列中。我的本地 Java/JRuby 程序注意到队列上的消息,执行工作并通过不同的队列发回状态。

这将是一个非常低容量的应用程序。一百万个请求的价格为 1.00 美元(加上少量数据传输费用),Amazon SQS 看起来比拥有任何类型的自己的服务器要实惠得多。而且超级可靠,这对我也很重要。

这种遥控器是否有更好/标准的工具包或架构?成本不是一个大问题,但我更喜欢我自己学习的大量内容。

我对安全性有适度的担忧,但怀疑这会是一个问题。识别的命令列表将非常短,并且仅在特定上下文中识别。没有“擦除硬盘”的东西。

更新:我可能会将这些程序分发给其他一些想要相同功能但没有 Amazon SQS 帐户的人。现在,他们将使用匿名访问我的队列,随机的 80 个字符的队列名称。