1
0
Fork 1
forked from fedi/mastodon
mastodon/app/workers/activitypub
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
..
delivery_worker.rb Add request pool to improve delivery performance (#10353) 2019-07-02 00:34:38 +02:00
distribute_poll_update_worker.rb Refactor all ActivityPub deliveries to be serialized and signed through one concern (#10966) 2019-06-04 23:11:18 +02:00
distribution_worker.rb Refactor all ActivityPub deliveries to be serialized and signed through one concern (#10966) 2019-06-04 23:11:18 +02:00
fetch_replies_worker.rb Do not error out on unsalvageable errors in FetchRepliesService (#10175) 2019-03-05 15:21:14 +01:00
low_priority_delivery_worker.rb Move sending account Delete to anyone but the account's followers to the pull̀ queue (#10016) 2019-02-12 05:10:43 +01:00
post_upgrade_worker.rb ActivityPub migration procedure (#4617) 2017-08-21 01:14:40 +02:00
processing_worker.rb Do not retry processing ActivityPub jobs raising validation errors (#10614) 2019-05-03 23:45:37 +02:00
raw_distribution_worker.rb Fix too many forwards (#5854) 2017-11-30 03:50:05 +01:00
reply_distribution_worker.rb Refactor all ActivityPub deliveries to be serialized and signed through one concern (#10966) 2019-06-04 23:11:18 +02:00
synchronize_featured_collection_worker.rb Ensure SynchronizeFeaturedCollectionWorker is unique and clean up (#7043) 2018-04-13 01:27:22 +02:00
update_distribution_worker.rb Refactor all ActivityPub deliveries to be serialized and signed through one concern (#10966) 2019-06-04 23:11:18 +02:00