Page MenuHomePhabricator

Allow Aphlict to partition clients
Closed, ResolvedPublic

Description

In a multi-tenant cluster like the Phacility cluster, it would be much easier to administrate a small number of notification servers than one-per-instance, and the capacity of a single server should greatly exceed the average demand of an instance.

We can support this by including a mode where servers partition client and administrative requests by "Host" header. Specifically, if you connect to the server and send instancea.phacility.com as the Host, you join a pool with other users on instancea. Likewise, administrative commands sent to that Host affect only the subset of users on that partition.

We can then put some dumb load balancing in front of it for now and some smarter load balancing later and get notification support relatively cheaply without needing to manage additional services per instance.

Revisions and Commits

Restricted Differential Revision

Event Timeline

epriestley raised the priority of this task from to Normal.
epriestley updated the task description. (Show Details)
epriestley added projects: Phacility, Aphlict.
epriestley added a subscriber: epriestley.
epriestley added a revision: Restricted Differential Revision.Feb 15 2015, 12:27 AM
epriestley renamed this task from Allow Aphlict to partition clients by "Host" header to Allow Aphlict to partition clients.Feb 15 2015, 12:56 AM
epriestley claimed this task.
epriestley closed this task as Resolved by committing Restricted Diffusion Commit.Feb 16 2015, 7:31 PM
epriestley added a commit: Restricted Diffusion Commit.