Adding rack timeout of 30sec, PuSH jobs moved to push queue so they
can be processed separately
This commit is contained in:
		
							
								
								
									
										1
									
								
								Gemfile
									
									
									
									
									
								
							
							
						
						
									
										1
									
								
								Gemfile
									
									
									
									
									
								
							| @@ -41,6 +41,7 @@ gem 'simple_form' | ||||
| gem 'will_paginate' | ||||
| gem 'rack-attack' | ||||
| gem 'rack-cors', require: 'rack/cors' | ||||
| gem 'rack-timeout-puma' | ||||
| gem 'sidekiq' | ||||
| gem 'ledermann-rails-settings' | ||||
| gem 'pg_search' | ||||
|   | ||||
| @@ -257,6 +257,9 @@ GEM | ||||
|       rack | ||||
|     rack-test (0.6.3) | ||||
|       rack (>= 1.0) | ||||
|     rack-timeout (0.4.2) | ||||
|     rack-timeout-puma (0.0.1) | ||||
|       rack-timeout (~> 0.2, >= 0.2.0) | ||||
|     rails-dom-testing (2.0.1) | ||||
|       activesupport (>= 4.2.0, < 6.0) | ||||
|       nokogiri (~> 1.6.0) | ||||
| @@ -438,6 +441,7 @@ DEPENDENCIES | ||||
|   rabl | ||||
|   rack-attack | ||||
|   rack-cors | ||||
|   rack-timeout-puma | ||||
|   rails! | ||||
|   rails_12factor | ||||
|   rails_autolink | ||||
|   | ||||
| @@ -2,6 +2,7 @@ | ||||
|  | ||||
| class ProcessingWorker | ||||
|   include Sidekiq::Worker | ||||
|    | ||||
|   sidekiq_options backtrace: true | ||||
|  | ||||
|   def perform(account_id, body) | ||||
|   | ||||
| @@ -4,6 +4,8 @@ class Pubsubhubbub::ConfirmationWorker | ||||
|   include Sidekiq::Worker | ||||
|   include RoutingHelper | ||||
|  | ||||
|   sidekiq_options queue: 'push' | ||||
|  | ||||
|   def perform(subscription_id, mode, secret = nil, lease_seconds = nil) | ||||
|     subscription = Subscription.find(subscription_id) | ||||
|     challenge    = SecureRandom.hex | ||||
|   | ||||
| @@ -4,6 +4,8 @@ class Pubsubhubbub::DeliveryWorker | ||||
|   include Sidekiq::Worker | ||||
|   include RoutingHelper | ||||
|  | ||||
|   sidekiq_options queue: 'push' | ||||
|  | ||||
|   def perform(subscription_id, payload) | ||||
|     subscription = Subscription.find(subscription_id) | ||||
|     headers      = {} | ||||
|   | ||||
| @@ -3,6 +3,8 @@ | ||||
| class Pubsubhubbub::DistributionWorker | ||||
|   include Sidekiq::Worker | ||||
|  | ||||
|   sidekiq_options queue: 'push' | ||||
|  | ||||
|   def perform(stream_entry_id) | ||||
|     stream_entry = StreamEntry.find(stream_entry_id) | ||||
|     account      = stream_entry.account | ||||
|   | ||||
| @@ -2,6 +2,7 @@ | ||||
|  | ||||
| class SalmonWorker | ||||
|   include Sidekiq::Worker | ||||
|    | ||||
|   sidekiq_options backtrace: true | ||||
|  | ||||
|   def perform(account_id, body) | ||||
|   | ||||
| @@ -30,7 +30,7 @@ Rails.application.configure do | ||||
|  | ||||
|   # Specifies the header that your server uses for sending files. | ||||
|   # config.action_dispatch.x_sendfile_header = 'X-Sendfile' # for Apache | ||||
|   # config.action_dispatch.x_sendfile_header = 'X-Accel-Redirect' # for NGINX | ||||
|   config.action_dispatch.x_sendfile_header = 'X-Accel-Redirect' # for NGINX | ||||
|  | ||||
|   # Force all access to the app over SSL, use Strict-Transport-Security, and use secure cookies. | ||||
|   config.force_ssl = false | ||||
|   | ||||
							
								
								
									
										1
									
								
								config/initializers/timeout.rb
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								config/initializers/timeout.rb
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| Rack::Timeout.timeout = 30 | ||||
| @@ -23,7 +23,7 @@ services: | ||||
|     restart: always | ||||
|     build: . | ||||
|     env_file: .env.production | ||||
|     command: bundle exec sidekiq -q default -q mailers | ||||
|     command: bundle exec sidekiq -q default -q mailers -q push | ||||
|     depends_on: | ||||
|       - db | ||||
|       - redis | ||||
|   | ||||
		Reference in New Issue
	
	Block a user