Resqus: git://github.com/defunkt/resque.git
来自于railscasts
安装redis,并启动redis
sudo redis-server /etc/redis.conf
在项目中配置redis,在config/下新建resque.yml
defaults: &defaults
host: localhost
port: 6379
development:
<<: *defaults
test:
<<: *defaults
staging:
<<: *defaults
production:
<<: *defaults
在config/initializers/下新建resque.rb
rails_env = ENV['RAILS_ENV'] || 'development'
resque_config = YAML.load_file(rails_root + '/config/resque.yml')
Resque.redis = resque_config[rails_env]
在Rakefile中加入
require 'resque/tasks'
在rails的项目中加入resque,在Gemfile中加入gem
gem 'resque', :require => 'resque/server'
在项目的lib/task/下新建文件:resque.rake
require 'resqus/tasks'
task "resque:setup" => :environment
在app下新建文件夹workers,并新建文件snipper_highlighter.rb
class SnippetHighlighter
@queue = :snippets_queue
def self.perform(snippet_id)
snippet = Snippet.find(snippet_id)
.........
end
end
在需要异步任务的代码里加入类似代码
Resque.enqueue(SinppetHighlighter, snippet.id)
开启resque-web
resque-web
执行resque任务
rake resque:work QUEUE='*'
将resque-web绑定到项目中来,在routes.rb中加入
mount Resque::Server, :at => '/resque'
这样在项目中通过路由/resque就能访问到resque-web了,并可设置访问密码,在config/initializers中新建resque_auth.rb文件
Resque::Server.use(Rack::Auth::Basic) do |user, password|
password == 'secret'
end
分享到:
相关推荐
ThinkPHP3.2 集成 php-resque: PHP Resque Worker =========================================== php-resque是php环境中一个轻量级的队列服务。具体队列服务是做什么用的,请自行百度! ## 运行环境 ## * ...
Laravel-resque是Laravel社区为了更好地利用Resque(一个由GitHub上的Chris Jones开发的Redis驱动的任务队列系统)而创建的一个连接器。这个项目的主要目标是为Laravel提供对Resque的无缝集成,让开发者可以利用...
- **Resque 监控**:可以使用 Resque 的监控工具(如 `resque-web`),监控队列状态、任务执行情况和错误日志。 - **Laravel 日志**:Laravel 默认集成了 Monolog,可以记录 worker 执行任务时的错误信息,便于...
**Laravel 开发与 Laravel Resque 连接器** 在 Laravel 框架中,队列是一种非常重要的功能,它允许开发者将耗时的操作(如发送邮件、处理大量数据等)放到后台执行,以提高应用的响应速度和用户体验。`laravel-...
**前端开源库-node-resque** `node-resque`是一个基于Node.js实现的开源库,它为前端开发者提供了一种高效且可靠的后台任务处理方案。在Web应用开发中,尤其是在涉及大量异步操作、数据处理或者需要定时执行的任务...
Ruby-resque-scheduler是Ruby社区中广泛使用的任务调度库,它是基于流行的resque库扩展而来的,用于在Ruby应用程序中实现定时任务和周期性作业。Resque本身是一个强大的队列系统,用于处理异步任务,而resque-...
resque-status, resque状态是对resque队列系统的一个扩展,它提供简单的可以跟踪作业 resque状态resque状态是对resque队列系统的一个扩展,它提供简单的可以跟踪作业。resque状态提供了一组简单的类,扩展了resque...
yii-resque, 基于 php Resque的Yii组件,基于 Resque我是 php的一个组件,它基于 php-resque resque和 php-resque-scheduler的组件,我们还通过使用 ResqueBoard测试了日志处理程序 using 。需求php函数扩展。Red
在Laravel框架中,`illuminate-resque`是官方提供的一个扩展库,它使得开发者能够利用Resque这个开源的后台任务处理系统来处理异步任务。Resque由Twitter的前工程师Chris Wanstrath创建,主要目标是提供一个简单且可...
Resque 是一个 Ruby 的工作队列系统,它用于在后台处理任务,比如电子邮件发送、图像处理等耗时操作,以防止阻塞Web应用的主线程。Heroku 是一个基于云的平台,主要用于托管Ruby on Rails和其他web应用程序。在这个...
Php-Resque 是 Resque 的PHP语言实现版。 使用示例: 1、定义一个任务队列:// Required if redis is located elsewhere Resque::setBackend('localhost:6379'); $args = array( 'name' => 'Chris' ...
Resque::延迟Resque 的作业排队延迟。 将仅在指定延迟后或将来特定时间出现以供处理的作业入队。关于对于在 cron 中运行会很尴尬的作业很有用。 例如: 过期的过期订单以释放预留库存以逐渐增加的延迟重试失败的 ...
背景Resque由GitHub开创,并用Ruby编写。 您在这里看到的东西几乎是作为Resque worker和enqueue系统直接移植到PHP的端口而开始的。 有关Resque的更多信息,请访问官方GitHub项目: ...
由于其基于成熟的 Resque 设计,拥有活跃的社区和丰富的文档,开发者可以方便地找到解决方案或贡献自己的代码。 总结来说,`php-resque` 是一个强大而可靠的 PHP 队列处理库,它利用 Redis 提供了稳定的后台任务...
Capistrano :: Resque ::游泳池 Capistrano集成,用于resque-pool 。 安装 将此行添加到您的应用程序的Gemfile中: gem 'capistrano-resque-pool' 然后执行: $ bundle install 或将其自己安装为: $ gem ...
Docker 中的 Resque Web 这个项目是一个 Resque Web 的 Docker 容器。 该容器基于 debian:wheezy。 它使用 apt-get 安装ruby 2.1 ,然后安装 resque-web gem。 获取容器 下载容器运行 docker pull ennexa/resque-...
在Resque框架中,后台任务处理涉及三个核心角色: 1. **Job(任务)**:代表一个具体的后台任务,如发送邮件,表现为一个PHP类。 2. **Queue(队列)**:用于存储待处理任务的队列,由Redis实现,可以进行插入和...
$ rake resque:pool # start a pool of Resque workers (see resque-pool.yml) $ WORKERS=n rake sidekiq:work # start a number of Sidekiq workers 可用的工作在jobs.rb并且与Resque 和Sidekiq 兼容(这可能是一个...