synapse-product/synapse/replication/tcp
Richard van der Hoff e5300063ed
Optimise queueing of inbound replication commands (#7861)
When we get behind on replication, we tend to stack up background processes
behind a linearizer. Bg processes are heavy (particularly with respect to
prometheus metrics) and linearizers aren't terribly efficient once the queue
gets long either.

A better approach is to maintain a queue of requests to be processed, and
nominate a single process to work its way through the queue.

Fixes: #7444
2020-07-16 15:49:37 +01:00
..
streams Allow moving typing off master (#7869) 2020-07-16 15:12:54 +01:00
__init__.py Fix some spelling mistakes / typos. (#7811) 2020-07-09 09:52:58 -04:00
client.py isort 5 compatibility (#7786) 2020-07-05 16:32:02 +01:00
commands.py Add ability to shard the federation sender (#7798) 2020-07-10 18:26:36 +01:00
handler.py Optimise queueing of inbound replication commands (#7861) 2020-07-16 15:49:37 +01:00
protocol.py Fix some spelling mistakes / typos. (#7811) 2020-07-09 09:52:58 -04:00
redis.py Fix some spelling mistakes / typos. (#7811) 2020-07-09 09:52:58 -04:00
resource.py Have all instances correctly respond to REPLICATE command. (#7475) 2020-05-13 10:27:02 +01:00