diff --git a/Gemfile b/Gemfile
index 5463bba4d37ef12c1681fbb237d4b409cdf310e7..0a3b93f7a6ac4aae8989ebccaae65fdeed1e3244 100644
--- a/Gemfile
+++ b/Gemfile
@@ -95,3 +95,6 @@ gem 'bullet'
 
 # docs
 gem 'rdoc'
+
+# Resque
+gem 'resque', require: 'resque/server'
diff --git a/config/initializers/resque.rb b/config/initializers/resque.rb
new file mode 100644
index 0000000000000000000000000000000000000000..f02b60ffdd2e92760c7f624e7cf4c5dd2319b950
--- /dev/null
+++ b/config/initializers/resque.rb
@@ -0,0 +1,15 @@
+require 'yaml'
+
+def set_resque_config(host)
+  Resque.redis = host
+end
+
+if Rails.env.production?
+  set_orientdb_config ENV['PORTALMEC_RESQUE_HOST']
+else
+  # connect to Resque/Redis server
+  resque_configs = YAML.load_file Rails.root.join('config').to_s.concat('/resque.yml')
+  config = resque_configs.fetch(Rails.env)
+
+  set_resque_config config['host']
+end
diff --git a/config/resque.yml b/config/resque.yml
new file mode 100644
index 0000000000000000000000000000000000000000..1902a2ce7bb24734465b114473e7659d419134ec
--- /dev/null
+++ b/config/resque.yml
@@ -0,0 +1,7 @@
+development: &development
+  host: localhost
+  port: 2480
+
+test:
+  host: mecdb1.c3sl.ufpr.br
+  port: 2480
diff --git a/config/routes.rb b/config/routes.rb
index 9445e45c115e3f6f0c2b0b75bfa5242ae95e0ccb..5f6bb9ea3dfdc8695b3cf426bfac091ca97726bf 100644
--- a/config/routes.rb
+++ b/config/routes.rb
@@ -32,4 +32,6 @@ Rails.application.routes.draw do
   get '/contact' => 'welcome#contact', as: 'contact'
   get '/complaint' => 'welcome#complaint', as: 'complaint'
   get '/search' => 'search/solr#search', as: 'search'
+
+  mount Resque::Server, :at => "/resque"
 end
diff --git a/lib/tasks/resque.rake b/lib/tasks/resque.rake
new file mode 100644
index 0000000000000000000000000000000000000000..4c093c8a5619c85f53d87be0320a79a984be04b0
--- /dev/null
+++ b/lib/tasks/resque.rake
@@ -0,0 +1,3 @@
+require "resque/tasks"
+
+task "resque:setup" => :environment