Date post: | 09-Jun-2015 |
Category: |
Technology |
Upload: | ciaran-rooney |
View: | 656 times |
Download: | 3 times |
Scaling an APIFrom Reboots to Redis, how (not) to do it
{ "fullName": "Ciarán Rooney", "work": { "position": ["CTO", "Speaker", "Mentor"] }, "home": { "email": "[email protected]", "twitter": "@CiaranR", "website": "http://ciaran.ie", "hobby": "http://phplondon.org" }}
{ "dataYear": "2013", "dataMonth": "april", "dataPeriod": "30 days", "dataRequests": { "apiRequests": "18,256,654,541", "impressions": “5,773,142,857", "uniqueUsers": "145,137,679" }, "customers": { "websitesPowered": "1,087,348", "customers": "26,379" }}
BIND / DNS
imageStorage
imageStorage
imageStorage
APIs
Database Master/Slave
Client App
Client App
Database Master/Slave
APIs
WordPress
WordPress Pinterest
Client App
Database Master/Slave
APIs
WordPress
SkimWords™
APIxx
APIxx APIxx APIxx APIxx APIxx APIxx APIxx APIxx
CLUSTERxx
ELBELB
CLUSTERxx CLUSTERxx CLUSTERxx CLUSTERxxCLUSTERxx
US-WEST US-EAST EU-WEST
JAYxx
Apache Flume
JAYxx JAYxx JAYxx JAYxx JAYxx JAYxx JAYxx JAYxx
ELBELB
CLUSTERxx
Apache FlumeCollector
C Prefix Tree C NLP Filterin
g
CLUSTERxx CLUSTERxx CLUSTERxx CLUSTERxxCLUSTERxx
US-WEST
US-EAST EU-WEST
Apache FlumeMaster
Cacti
Conclusions
Small Scalable units
Horizontal is always better
Eliminate Single points of failure
Scale writes and reads separately
Automate everything
Monitor everything
Scaling an APIFrom Reboots to Redis, how (not) to do it
Questions?
{ "fullName": "Ciarán Rooney", "workLife": { "position": "CTO" }, "homeLife": { "email": "[email protected]", "twitter": "@CiaranR", "website": "http://ciaran.ie", "hobby": "http://phplondon.org" }}