mastodon/app/workers
Eugen Rochko 0d9ffe56fb
Add request pool to improve delivery performance (#10353)
* Add request pool to improve delivery performance

Fix #7909

* Ensure connection is closed when exception interrupts execution

* Remove Timeout#timeout from socket connection

* Fix infinite retrial loop on HTTP::ConnectionError

* Close sockets on failure, reduce idle time to 90 seconds

* Add MAX_REQUEST_POOL_SIZE option to limit concurrent connections to the same server

* Use a shared pool size, 512 by default, to stay below open file limit

* Add some tests

* Add more tests

* Reduce MAX_IDLE_TIME from 90 to 30 seconds, reap every 30 seconds

* Use a shared pool that returns preferred connection but re-purposes other ones when needed

* Fix wrong connection being returned on subsequent calls within the same thread

* Reduce mutex calls on flushes from 2 to 1 and add test for reaping
2019-07-02 00:34:38 +02:00
..
activitypub Add request pool to improve delivery performance (#10353) 2019-07-02 00:34:38 +02:00
admin
concerns
import
maintenance
pubsubhubbub
scheduler
web
after_account_domain_block_worker.rb
after_remote_follow_request_worker.rb
after_remote_follow_worker.rb
authorize_follow_worker.rb
backup_worker.rb
block_worker.rb
bootstrap_timeline_worker.rb
digest_mailer_worker.rb
distribution_worker.rb
domain_block_worker.rb
feed_insert_worker.rb
fetch_reply_worker.rb
import_worker.rb
link_crawl_worker.rb
local_notification_worker.rb
merge_worker.rb
mute_worker.rb
notification_worker.rb
poll_expiration_notify_worker.rb
processing_worker.rb
publish_scheduled_status_worker.rb
push_conversation_worker.rb
push_update_worker.rb
refollow_worker.rb
regeneration_worker.rb
remote_profile_update_worker.rb
removal_worker.rb
resolve_account_worker.rb
salmon_worker.rb
thread_resolve_worker.rb
unfavourite_worker.rb
unfollow_follow_worker.rb
unmerge_worker.rb
verify_account_links_worker.rb