From 547a42d9ee82de6ded85e2cfdd2c19bf1549c947 Mon Sep 17 00:00:00 2001 From: Alex Kotov Date: Fri, 7 Dec 2018 18:44:51 +0500 Subject: [PATCH] Use Sidekiq --- Gemfile | 5 ++++- Gemfile.lock | 10 ++++++++++ config/application.rb | 3 +++ config/credentials.yml.enc | 2 +- config/initializers/sidekiq.rb | 15 +++++++++++++++ 5 files changed, 33 insertions(+), 2 deletions(-) create mode 100644 config/initializers/sidekiq.rb diff --git a/Gemfile b/Gemfile index 9451ff4..db3c041 100644 --- a/Gemfile +++ b/Gemfile @@ -31,7 +31,7 @@ gem 'turbolinks', '~> 5' # gem 'jbuilder', '~> 2.5' # Use Redis adapter to run Action Cable in production. -# gem 'redis', '~> 4.0' +gem 'redis', '~> 4.0' # Use ActiveModel has_secure_password. gem 'bcrypt', '~> 3.1' @@ -95,6 +95,9 @@ gem 'omniauth-github', '~> 1.3' # A rack middleware for throttling and blocking abusive requests. gem 'rack-attack', '~> 5.4' +# Simple, efficient background processing for Ruby. +gem 'sidekiq', '~> 5.2' + group :development, :test do # factory_bot provides a framework and DSL for defining and using factories. gem 'factory_bot_rails', '~> 4.10' diff --git a/Gemfile.lock b/Gemfile.lock index aa432c5..f0e748d 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -98,6 +98,7 @@ GEM choice (0.2.0) coderay (1.1.2) concurrent-ruby (1.1.3) + connection_pool (2.2.2) coveralls (0.8.22) json (>= 1.8, < 3) simplecov (~> 0.16.1) @@ -239,6 +240,8 @@ GEM rack (2.0.6) rack-attack (5.4.2) rack (>= 1.0, < 3) + rack-protection (2.0.4) + rack rack-test (1.1.0) rack (>= 1.0, < 3) rails (5.2.2) @@ -278,6 +281,7 @@ GEM rb-fsevent (0.10.3) rb-inotify (0.9.10) ffi (>= 0.5.0, < 2) + redis (4.0.3) regexp_parser (1.3.0) responders (2.4.0) actionpack (>= 4.2.0, < 5.3) @@ -333,6 +337,10 @@ GEM faraday (>= 0.7.6, < 1.0) shoulda-matchers (4.0.0.rc1) activesupport (>= 4.2.0) + sidekiq (5.2.3) + connection_pool (~> 2.2, >= 2.2.2) + rack-protection (>= 1.5.0) + redis (>= 3.3.5, < 5) simple_form (4.1.0) actionpack (>= 5.0) activemodel (>= 5.0) @@ -427,6 +435,7 @@ DEPENDENCIES rails (~> 5.2.1) rails-erd (~> 1.5) rails-i18n (~> 5.1) + redis (~> 4.0) rest-client (~> 2.0) rolify (~> 5.2) rspec-rails (~> 3.8) @@ -434,6 +443,7 @@ DEPENDENCIES sass-rails (~> 5.0) sentry-raven shoulda-matchers (= 4.0.0.rc1) + sidekiq (~> 5.2) simple_form (~> 4.1) simplecov (~> 0.16) spring diff --git a/config/application.rb b/config/application.rb index 5d32b0d..df98ed8 100644 --- a/config/application.rb +++ b/config/application.rb @@ -44,6 +44,9 @@ module Partynest # ActionMailer previews. config.action_mailer.preview_path = Rails.root.join('app', 'previews') + # Use Sidekiq as ActiveJob adapter. + config.active_job.queue_adapter = :sidekiq + config.generators do |g| g.assets false g.helper false diff --git a/config/credentials.yml.enc b/config/credentials.yml.enc index 6ee49a9..c8c2b78 100644 --- a/config/credentials.yml.enc +++ b/config/credentials.yml.enc @@ -1 +1 @@ -MtKy/wYPGEJmy46Dtogsm4ksoFfgz8jI1HuP4YxCJEzSyAQ1b4jAOJVKK4b1iWYQvrVBanj7FYZ3P2JmTfVOdlu4xIp3lEzyGLRGgZvu3VJkUjPtc9oYHBcUNQKhpApj2vU6CGmePLQ8mVRv66mePn5nGHxW3jDC0OLkopvtkMxRL14RlUEloSvAC+ERx2e7ghBTyEY8AHg4hZdkoqT6E8hfOhMF2tDSigBskDzQ5fnUtlsukMQM+khNAh5wQFDRfHgcBQbXSVEMWFp4McW1I5nb3seX3JRyTL+RfWnCfcclJCufhloMZka6MPVNjXLVC3riwyCGqYr/cau7BKdF3jE9flmsamcfF/BR7MRisJAWDPjO4RRJBWjxOu6BeRcxV/ae6c89o0/zMNppK8sZKyMv8xJMpdj5dKXi3SBVcKcRUdITXW4Xva7/IuXJaODSf8PNrFsvdhm5yM9xpFX2+Nd/M7v60ggq9TIMRKpKB4lyxh8CjytM/yeulN2naMVX9gYOTtL/pNU1P82FBJs81oHeQRbKuya4KR+IjmL5ZILqHy6SQ+BKmdUwkOoHoIN1nyewF2tFvyb0nV5t5TjXgThK9kFKa82Ogc0+bQgpY4Z0uzoX0tGTtZz4hKvBff/5QFNFrTfUCLWmosj69Dw25s/tSlc/a4CStg6i2j/vjl/A1UH9kIlU1IEKPvVa7zJIzvPneQ/oS6UyI6ljekoWzZaqbO0kNCN9x8qzIJRHcu54K1AXLxMKrzKHgeUvoVbDgOOnzYjZIyovM2lwR25KSSjMT6jT/W85GD1z5HKJI4LWKhgo0+4uKK4tcwqxbYbcwKsKHHvUURwpbzG+mzr4970o3y05EjBi8DGoEBoWQViXXaN44+FoLiJJHHiPESkR/Y5Ym+rZ2NSX0/5f68jlThdjhCUPiiGITYkFBXMzSo8AzjvHRc3G0h9tKABc/0oqdmxsvqqlHJgl1Yu4gWMozohBS6YEezfAXuwtWd14ZqxciIfA2zlYKkAlSHkjYj7lmSmqcCBKMKBAxHmb4dqrKsDTDZg5XnnSTe804bh8As1apdUupgOLDPMkcB2MFDa59SIw+fkNT26SxA==--hUERiL1TFWDDRGh+--vnszh4d4JCXSoHEB2w2WEA== \ No newline at end of file +YIA6Ql7SUYdg44MGMKxKCam6EeuBk9J83SQc7PKLgR337Z+b3tmPO46m3i+wAXp3yBTHAwM1nyatXfJud9oBBYW2LB8uCytvGWMDrUGgT4Ou5ii/0s9mtEaTWfTAOxiwiNM+737FLyD5qujvb6j2vCTABSTWm3/ZBmpYm2vId1dFKJ9hpafqgdLYEh+r6Jot5SFJQMckKBIMgySxMUgKq4dYSsIEh0g+M6zAAL2BLoNwq10HXNs3JiJxEztVfcV+Z+r1OJFXiCu8MxdNMucXXsOe7+T9XWNOHfCt5o50s2v3a0KiJsl2q1JpZq7LLEhNWh55uYVg53aTMHe4hP+9HmcjlMlK0TFAIQsa3tziSiFfDXXQ0oYqxS00gT/EoyVmEQ4j/SiVdN2HebuCmaZk3Wv6NQMxlGj+PE+OKVa/+5swF5Qt4Tq/Nbu0rE9CUiq3KdoDfuLoHwlvpyE6yjFNLSrSsJgg3NkS2BBlWcO4OOGuc57ogW9Gha7aRX3nLc5hXDORVjqltaelSus1+5CfKPZuArXap7Zzo1qwHzNOhGGDWPtZjj5c6d5msIVVgJscvA5R1EIXXtO54yLsHpY1/kLLN7To3OYvb6MYmf7PvzIcBojbr9PxQ7b2CgsWELP01/L8eA4HfUQZpR0wwgZRfInGZe9Ok0Flg4Z4RZnYiC5qpcWFwH6RQ8FZhGS9HFJbnNvm1O4uJjQOGz9cVvNIv3xCOhfGq8NAqMzuP0/s2iJdAT4cdKeZYN7QrFVwUiSRKGJ/yY0yQtV5GHcgSynJeIac/pc9d86MbhscMs8ZjDB3m7Ml2L3E89dmx5ZM9EIPVFUSsK5V8XxQnl1da7yMMT6BQudEEp8jmWGS0CBbiOcFgKcxmKRqTVBK/wVBrt/6OnSHHwxCLlqvL0UnSmOJhJU07ZWzH8WoElAezYynktCNWRQsUXJxDQB+f6zIK5tUamifgbj8ltPbc86XZ8l2xmCnloV1DMtjYqPZ6zgUGZR/FFA3qQMpCGZxpf2UC4qjMTvaqVUQ4LJt8n3+xLU0CUKeTrMhG3XLpn6K0znqt9iHvGOFDeNVS7tDE0h65mzzZSQ1qPH+3Gr+1GORttew1p+HVnNrkxSNdqPACoOwDdEConzv8ShNIt5Q3IiTtpnAFuk7IPkuqowjWLaz6Do293seldbKo/97RIvDWi+Nn+a7rBS3QAlz5NzyF0qxdB+BKfbdEvgr/UbOPBfu+o+EQYFYdcPuN023s1PRVoWriyzJ16SSGO1z1sVSyXhU96e0FpUchYu5gL74Ph+iSNnhmYmhe3PjozUsseCWPn0p--KrFgLdeuWRwnUnJh--RPyYkAKn6/QUXrAHHc3PwA== \ No newline at end of file diff --git a/config/initializers/sidekiq.rb b/config/initializers/sidekiq.rb new file mode 100644 index 0000000..65cce99 --- /dev/null +++ b/config/initializers/sidekiq.rb @@ -0,0 +1,15 @@ +# frozen_string_literal: true + +# Be sure to restart your server when you modify this file. + +Sidekiq.configure_server do |config| + Rails.application.credentials.sidekiq_redis_server.try do |redis_config| + config.redis = redis_config.deep_symbolize_keys if redis_config + end +end + +Sidekiq.configure_client do |config| + Rails.application.credentials.sidekiq_redis_client.try do |redis_config| + config.redis = redis_config.deep_symbolize_keys if redis_config + end +end