Some shall pass

Posted:   |   More posts about Python Twisted Facebook Gatekeeper
Update for 13 May 2013
Bossa Studios is using Some Shall Pass for an internal project and so allocated me dev time to work on it.
It's a lot more feature complete now. Aside from some work on the admin interface and better error checking (which is comming soon) it's properly usable.

A while ago I watched a great Facebook tech talk. The thing that stuck with me was their feature service they called Gatekeeper, described far better than I could in this TechCrunch article.

Gatekeeper allows Facebook to very easily AB test features, but impressively to change who's in A and who's in B very quickly. They can test a feature on 1000 users for an hour and then drop it back down to only their team members.

Some shall pass is my attempt to write a similar service. It's missing a lot of essential secret sauce and a well defined API, both of which I'll try to add over the coming weeks, but in the mean time feel free to check out some shall pass on Bitbucket.

In it's un-scalable state it'll handle about 3k HTTP requests/sec, one of the many reasons I'm loving Twisted. I suspect the line receiver protocol will do a significant amount more than that. Once I write in the Redis scaling the sky should be the limit.