online in early 2015 (Active-Passive). • Downtime costs our merchants money. • How would we perform the DC failover (success-over)? • How could we test the second data center before flipping the switch?
Expose a Lua module that exports two functions: call, and init_worker. • Runs in an NGINX request phase — access_by_lua, rewrite_by_lua, content_by_lua, etc. • Configured via Chef – NGINX configuration file is generated by Chef. • Example Middlewares — request ID generation, Kafka logging, ping, HTTPDB
and test • Platform agnostic — Client libraries for Ruby, Go. .NET, Node, PHP • Toxics manipulate network conditions – latency, down connection, bandwidth, and more
Sorting Hat into production, though it was effectively doing nothing. • Simple Deployment — One button deploys and rollbacks. • Weekly Practice — Use Sorting Hat to move a test shard back and forth.