问题标签 [beanstalkd]

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 投票
2 回答
2977 浏览

message-queue - 具有延迟的简单可扩展工作/消息队列

我需要设置一个作业/消息队列,并可以选择为任务设置延迟,以便空闲工作人员不会立即接收它,而是在一定时间后(可能因任务而异)。我研究了几个 linux 队列解决方案(rabbitmq、gearman、memcacheq),但似乎没有一个提供开箱即用的功能。

关于如何实现这一目标的任何想法?

谢谢!

0 投票
4 回答
906 浏览

php - 当 cron 作业不够时,我该使用什么?(php)

我试图找出每天数千次运行相当庞大的 PHP 任务的最有效方法。它需要与 Gmail 建立 IMAP 连接,遍历电子邮件,将此信息保存到数据库并在本地保存图像。

经常使用 cron 运行这个任务并不是什么大不了的事,但我需要每分钟运行一次,而且我知道 cron 最终会开始相互叠加运行并导致内存问题。

当您需要在一分钟内多次高效地运行任务时,下一步是什么?我一直在阅读有关 beantalk 和 pheanstalk 的文章,但我不完全确定这是否能满足我的需要。想法???

0 投票
3 回答
5189 浏览

beanstalkd - 无法使用 beanstalkd 预订工作

我已经尝试在两台不同的服务器上启动并运行 beanstalkd 并进行一些测试(本地在 MacOSX 上从源代码编译,以及在安装了 yum 的 CentOS 服务器上)

我可以让服务器运行

或者

然后我尝试使用 php lib,它只是冻结了。直接连接:

我执行以下操作来模仿 PHP 测试脚本:

如果我只是跑

它被无限期地卡住了。

PHP代码是

并且只是冻结在“试图保留”上。原始代码来自:

http://sourceforge.net/projects/beanstalk/

有任何想法吗?提前致谢。

0 投票
6 回答
8094 浏览

beanstalkd - beanstalkd 界面/GUI

有谁知道管理 beanstalkd 的任何界面?我模糊地寻找的是像 MySQL 的 PhpMyAdmin 之类的东西。

不必是 PHP 或基于 Web 的,可以是任何界面、GUI ..etc

0 投票
1 回答
634 浏览

c - beanstalkd c 客户端库

我们将以异步方式实现一个相当复杂的新服务,同时引入异步处理。为此,我们选择了 beanstalkd消息队列服务,因为它最适合我们的需求。

问题是 beanstalk 似乎错过了 C 中的客户端 API,至少我没有找到它。

我不想发明轮子:是否有可用于 beanstalkd 的客户端 API?

0 投票
1 回答
634 浏览

php - beantalkd 怪异,返回无效工作

beanstalkd 在捉弄我。正如您从以下一系列命令中看到的那样,有现成的作业,但我无法查看、删除或对它们进行任何操作。

0 投票
2 回答
935 浏览

queue - 使用 beanstalkd,对于周期性任务,如何总是让一个工作被最新的工作取代?

我正在尝试使用 beanstalk 对大量周期性任务进行排队(例如,任务需要每 N 分钟处理一次),对于每个任务,如果最后一个排队的作业没有完成(我的意思是不是保留)当前作业是补充说,最后排队的作业应该替换为当前作业,换句话说,只应处理任务的最新排队作业。

我怎样才能使用beantalk实现这一目标?

我现在的想法是:对于每个任务,使用 memcached 存储其最新的时间戳(在将作业添加到队列时设置),每次工作人员成功保留作业时,它首先检查 memcached 中该任务的时间戳,如果时间戳为该作业与 memcached 中的时间戳相同,然后处理该作业,否则跳过该作业,并将其从队列中删除。

那么有没有更好的方法来做这样的工作呢?请提出您的建议,谢谢。

0 投票
4 回答
2457 浏览

security - 如何在敌对的云环境中保护 memcached/beanstalkd?

这是我的服务器(在 Amazon EC2 中)的样子:

一台服务器上有多个用户进程。然后,每个用户都有自己的 memcached 实例在(单独的)服务器上运行(与许多其他 memcached 实例)。如果没有任何类型的安全性(默认情况下),用户进程 B 可以猜测用户 A 的 memcached 实例的端口并访问它。如何保护这个系统,以便用户 C 只能访问 memcached 实例 C 而不能访问其他(即使 memcached 实例都在同一台服务器上)?我的用户不需要做任何事情来使用安全性(只需像往常一样继续连接到 memcached 端口),这一切都应该由系统自动发生。

此外,服务器上的 Cloud Monitor Daemon 以及“敌对”用户进程需要能够访问远程 beanstalkd 服务器。Beanstalkd 也没有身份验证,所以如果我的 Monitor Daemon 可以访问 beanstalkd,那么“敌对”用户进程也可以,我不希望这样。我怎样才能保护这部分?

0 投票
1 回答
525 浏览

data-structures - 使用 AMQP 而不是 Beanstalkd 的原因是什么?

为什么要使用其中一个?

0 投票
2 回答
3814 浏览

ruby-on-rails - Rails:我可以在不同的服务器上运行后台作业吗?

是否可以在一台服务器中托管应用程序并在另一台服务器中排队作业?

可能的例子:

  1. 两个不同的 EC2 实例,一个用于主服务器,第二个用于排队服务。

  2. 在 Heroku 中托管应用程序并将 EC2 实例与队列服务一起使用

那可能吗?

谢谢