Files
zulip/zerver/tornado/sharding.py
Tim Abbott 0cac7e1cd3 tornado: Extract functions for Tornado queue names.
This moves all control for what queue to use for which realm in our
Tornado system to just the sharding.py file; no actual sharding is
done yet.
2018-11-02 17:00:10 -07:00

26 lines
762 B
Python

from django.conf import settings
from zerver.models import Realm
def get_tornado_port(realm: Realm) -> int:
if settings.TORNADO_PROCESSES == 1:
return int(settings.TORNADO_SERVER.split(":")[-1])
return 9993
def get_tornado_uri(realm: Realm) -> str:
if settings.TORNADO_PROCESSES == 1:
return settings.TORNADO_SERVER
port = get_tornado_port(realm)
return "http://127.0.0.1:%d" % (port,)
def notify_tornado_queue_name(port: int) -> str:
if settings.TORNADO_PROCESSES == 1:
return "notify_tornado"
return "notify_tornado_port_%d" % (port,)
def tornado_return_queue_name(port: int) -> str:
if settings.TORNADO_PROCESSES == 1:
return "tornado_return"
return "tornado_return_port_%d" % (port,)