草庐IT

作业组

全部标签

ruby-on-rails - 从两个 Rails 服务器在 Sidekiq 中排队和运行作业

我有两台服务器:网络服务器(前端)和分析(后端)服务器。我需要通过Sidekiq将作业从前端服务器传递到后端服务器。我的技巧是:在网络服务器和后端服务器上安装Sidekiq。我现在有前端Sidekiq和后端Sidekiq。配置前端Sidekiq,使其指向后端Sidekiq的Redis服务器。也就是说,两个Sidekiq共享同一个Redis数据库服务器。现在,我需要从前端Sidekiq入队一个作业,然后从后端Sidekiq执行一段代码。我应该怎么做? 最佳答案 Sidekiq是一个分布式消息队列,它的全部目的是为您描述的用例服务。只需

ruby-on-rails-3 - 多个 Rails 应用程序可以使用一个 Redis 来执行重新请求作业吗?

有没有为多个rails应用程序使用一个redis(用于后台作业)?编辑:如果我对所有应用程序使用相同的redis,那么一个redis有许多来自不同应用程序的作业排队,这会引发应用程序的Resque可能处理错误作业的问题。 最佳答案 如文档中所述,您可以将Resque设置为使用命名空间连接到Redis,如下所示:Resque.configuredo|config|#Settheredisconnection.Takesanyof:#String-aredisurlstring(e.g.,'redis://host:port')#Str

java - Laravel exec() 在队列作业中

我在我的laravel应用程序中使用了redis队列。从我的队列作业中调用exec('{runsomejavaprogram}')似乎并没有实际执行该命令。有人知道吗? 最佳答案 如果您的外部可执行文件由于任何原因出现错误,PHP将跳过并忽略exec的输出(您可能希望调试/将exec()的结果转储到文件/控制台以了解更多信息)和因此队列也是如此。请记住,运行队列的PHP-CLI无法访问您通常在非CLI(PHP-FPM、Apache模块等)环境中使用的任何内容(请求、请求()和$request不会像你期望的那样工作)相关:Larave

python-3.x - python-rq 作业没有超时

有没有办法为工作人员指定“最大”=inf超时?我有一些长时间运行的任务,如果由于超时而失败,我会在工作人员内部处理它。可以通过cli指定吗? 最佳答案 timeout参数指定任务在被视为“丢失”之前的最长运行时间。可以与@job、Queue、enqueue和enqueue_call一起使用。fromrq.decoratorsimportjob@job('low',connection=my_redis_conn,timeout=600)deflong_running_task(x,y):#Codepython-rq.org/docs

ruby-on-rails - Redis 上的连接数是否会限制我可以在后台执行的作业数?

我目前在我的Rails应用程序中使用Sidekiq(免费)和HerokuRedis(免费)。我注意到HerokuRedis说它的连接限制为20。这会影响/限制我可以使用Sidekiq执行的后台作业的数量吗?本质上,我在此应用程序中使用Sidekiq的全部目的是发送电子邮件以获取时事通讯。时事通讯准备就绪后,通过单击按钮发送电子邮件。此按钮从我的EditionsController执行以下代码:defsend_notificationusers=User.allusers.eachdo|user|EditionMailer.with(edition:@edition,user:user)

python-3.x - python apschedular RedisJobStore 不在 redis 缓存中存储作业

那是我的python代码:所有作业都在正确的时间触发,但没有存储为redis缓存。如果重新启动程序,则无法安排挂起的作业。我做错了什么?fromapscheduler.jobstores.redisimportRedisJobStorefromapscheduler.executors.poolimportThreadPoolExecutor,ProcessPoolExecutorif__name__=='__main__':jobstores={'redis':RedisJobStore(jobs_key='dispatched_trips_jobs',run_times_key='

php - 如何在 php resque 中为 redis 定义作业?

我是redis的新手,目前我正在为redis使用PHPresque。如何在phpresque中定义作业? 最佳答案 这在2012年10月13日发布的最新版本的PHP-resque中有所改变。根据变更日志,“将作业参数包装在数组中以提高与ruby​​resque的兼容性。”这意味着如果您已经升级到PHP-Resque1.2,您将从$args[0]访问作业。 关于php-如何在phpresque中为redis定义作业?,我们在StackOverflow上找到一个类似的问题:

javascript - node.js 的作业队列

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭6年前。Improvethisquestion背景在一个开源项目中工作,我们有很多后端处理任务,有些繁重,有些轻量级,速度非常快。我们决定使用作业队列来处理不同的作业,因为使用队列我们可以扩大消费者的规模,从而一次执行更多的作业,并保证即使worker崩溃也能实际执行作业。要求可靠性很重要。我们希望能够确保每个作业都已完成,即使执行它的工作人员崩溃、队列崩溃或系统崩溃也是如此。我们还希望能够在重载队列上扩展工作模

ruby-on-rails - Resque - 在多个服务器之间平均分配作业负载

我有一个Rails应用程序,其中Resque在多个服务器上执行后台作业。这些作业在资源需求方面是不同的,所以我想限制特定类型的作业数量,每个服务器都可以做。我希望能够让多个服务器查询同一个Redis数据库。场景如下:我将Server-1和Server-2连接到同一个Redis数据库。1)每个服务器最多应承担3个“编码”作业和5个“解析”作业(总共8个作业)。2)在给定时刻,Redis服务器将有10个作业在“编码”队列中,12个作业在“解析”队列中可供Resque工作程序处理。我有2个服务器在运行,查询同一个数据库。问题:如何防止服务器1承担8个“编码”工作而服务器2承担其余工作?换句话

算法设计与分析—动态规划作业二(头歌实验)

第1关:聪明的寻宝人任务描述本关任务:计算寻宝人所能带走的宝物的最大价值。一个寻宝人在沙漠中发现一处神秘的宝藏,宝藏中共有n个宝物(n不超过20),每个宝物的重量不同,价值也不同,宝物i的重量是wi,其价值为vi。寻宝人所能拿走的宝物的总重量为m(m不超过50)。请帮助寻宝人写一个程序,计算寻宝人能够获得的最大总价值。编程要求在右侧编辑器中有一个函数MaxValue,它有四个参数values,weights,n,m。values和weights分别存放了n件宝物的价值和重量,m为寻宝人所能携带的最大重量。请在这个函数中补充代码,计算并输出寻宝人所能获得的最大总价值。输入数据由评测系统读取,并传