jjzjj

Resque-Worker

全部标签

windows - 使用不同数量的多核 worker 时的不同行为

我正在研究我的程序(尝试对一些部分进行多核处理),我注意到“CPU历史记录”看起来有点不同,这取决于我启动了多少个worker。2-4个worker似乎产生了一个“稳定”的工作流程,但是固定5-8个worker会产生不稳定的行为(从零到最大,见图片)。我应该指出,所有运行都以“平滑”的最大容量开始(例如,只有25%的2个内核),并且仅在一分钟左右后才开始表现出不稳定的行为。这是怎么回事?我有4核处理器,你认为这种行为可能与这个事实有关吗?我希望你能看到这些照片。2名worker3名worker4个worker5名worker6名worker7个worker8名worker

redis - 具有 Redis 代理的 celery worker 无法执行 Django 任务

最近我正在通过开发自己的Reddit克隆(在ubuntu14.04LTS上)学习Python(2.7)/Django(1.5)。我正在尝试将Celery(3.1)与Redis结合起来,使用它定期运行排名算法作为一项任务(在我的本地设置上)。但不幸的是,我无法让这个简单的任务执行一次!你能帮我发现我做错了什么吗?这是我的目录结构:-unconnectedreddit(manage.pyishere)-links(tasks.py,models.py,views.py,admin.py)-unconnectedreddit(celery.py,__init.py___,settings.p

ruby-on-rails - 在单独的服务器上设置 resque/redis

我正在将我的redis和resque工作人员拆分到一台新机器上。以前它们都在一台机器上运行-成功。我使用cap进行部署,在成功部署后,当我尝试排队重新请求作业时,我在rails日志中得到了这个:==>shared/log/production.log"24803","degrees"=>"180"}D,[2016-05-28T05:43:04.183430#5769]DEBUG--:PhotoLoad(1.4ms)SELECT`photos`.*FROM`photos`WHERE`photos`.`id`=24803LIMIT1I,[2016-05-28T05:43:04.250844

python-2.7 - python-rq worker自动关闭

我正在实现python-rq以在队列中传递域并使用BeautifulSoup抓取它。所以我正在运行多个worker来完成工作。截至目前,我启动了22个worker,所有22个worker都在rq仪表板中注册。但是一段时间后,工作人员自行停止并且没有显示在仪表板中。但是在webmin中,它显示所有工作人员都在运行。爬行速度也降低了,即worker没有跑。我尝试使用supervisor和nohup来运行worker。在这两种情况下,worker都会自行停止。这是什么原因?为什么worker会自己停下来?我们可以在一台服务器上启动多少个worker?除此之外,每当有工作人员从rq仪表板注销时

python - RQ Flask Heroku worker 应用上下文

有app.py:app=Flask(__name__)withapp.app_context():app.config.from_object(os.environ['APP_SETTINGS'])app.config['SQLALCHEMY_TRACK_MODIFICATIONS']=Falseapp.debug=Truedb.app=appdb.init_app(app)if__name__=='__main__':app.run()和worker.py:importosimportredisfromrqimportWorker,Queue,Connectionlisten=['h

ruby-on-rails - 在 rails 中使用 resque 调度程序时如何检查作业的状态?

我有一些作业在后台运行以在某些预先提到的时间段执行。我正在使用resque-schedulergem对Redis服务器上的作业进行排队。虽然我有他们的工作ID,但我想知道该特定工作的状态。是否有任何特定的命令或代码可以帮助我找到此类作业的状态。 最佳答案 您可以使用resque-status扩展来实现这一点。这由resque-scheduler支持.您可以找到更多相关答案here. 关于ruby-on-rails-在rails中使用resque调度程序时如何检查作业的状态?,我们在Sta

python - Celery worker 进入无限启动和关闭循环

几年来,我一直在Django项目中使用celery(python中的异步任务队列)作为结果后端和代理-今天我尝试将后端/代理切换到AWS的ElastiCacheRedis,但是celeryworker进入无限的启动和关闭循环,如下面的日志文件所示。我还从运行celery的同一台机器成功连接到Redis实例,并成功完成了一些基本的SET和GET操作。我当前的设置是:操作系统:Ubuntu14.04python2.7.6celery3.1.17昆布3.0.37台球3.3.0.23命令:celeryworker--concurrency=3--queues=general--events--

python - Celery Worker 不执行 cassandra 查询

我在用celery==4.1.0(latentcall)[cqlsh5.0.1|Cassandra3.11.2|CQLspec3.4.4|Nativeprotocolv4]Python2.7.14我正在尝试在Celery辅助函数中执行Cassandra查询。但Celeryworker收到任务但没有执行Query。tasks.pyfromcassandra.clusterimportClusterfromceleryimportCeleryapp=Celery('',backend="rpc://",broker='redis://localhost:6379/0')dbSession=

ruby-on-rails - 永久删除resque作业?

有没有办法从重新请求队列中永久删除作业?以下命令删除作业,但当我重新启动工作人员和resque服务器时,作业会重新加载。Resque::Job.destroy("name_queue",Class)或Resque.remove_queue("name_queue") 最佳答案 问题是您没有删除通过resque添加到Redis服务器的作业的特定实例。因此,当您删除队列然后在重新启动服务器时将其添加回来时,该队列中的所有数据仍可能位于您的Redis服务器中。您可以在job.perform中解决这个问题,具体取决于您的实现。例如,如果您想

ruby-on-rails - rails : Resque parellel queues

我有多个作业在Resque的多个队列中运行。我的问题是,当一个队列运行大量作业时,它会阻塞我的其他队列。如何让Resque运行并行队列,但仍将每个队列一次限制为一个作业? 最佳答案 您可以为每个队列启动不同的工作程序。为此,您必须在QUEUE环境变量上指定要处理的队列的名称。因此,如果您有3个队列,您将执行以下操作:QUEUE=queue1bundleexecrakeresque:workQUEUE=queue2bundleexecrakeresque:workQUEUE=queue3bundleexecrakeresque:wor