A canary deployment server
Up to now we've talked mostly about key-value servers - making one, testing it, and turning it into a distributed system. Now it is time to talk about something every company does: deploy code.
Companies of every size deploy code. Some do it once a week, some do it as soon as the code is ready. Regardless of how often they deploy, one valuable strategy when deploying is not to change everything all at once. A great way to do this is with canary deployments.
Canary deployments are when new code is deployed to a small subset of users to determine that the code changes work as expected. Once you have determined the success or failure of the changes, you can make them live to all users, or remove them entirely as desired.