If you can't read please download the document
Upload
mike-willbanks
View
1.872
Download
0
Embed Size (px)
Citation preview
2. Scalability?
3. Database Servers 4. Cache Servers 5. Job Servers 6. .... 7. The Beginning...
8. The Next Step...
However, we can't handle our current I/O on our web server.Let's start there... 9. Web Servers 10. Load Balancing Our Environment 11. Several Options
Software Based
Hardware Based
12. What We Need to Remember
13. Static content could be tagged in version control. 14. Static content may need a file server / CDN / etc. 15. User Generated content on NFS mount or served from the cloud or a CDN. Sessions
16. Remember disk is slow and the database will be a bottleneck.How about distributed caching? 17. Other Thoughts
18. Database Servers 19. Where We All Start
20. Replication
21. Multiple Slaves
22. Multiple Masters
23. Be warned, auto-incrementing now should change so you do not conflict. 24. Partitioning
Horizontal Partitioning
25. Vertical Partitioning id uri name content 1 / homepage TEXT 2 /contact contact TEXT id uri 1 / 2 /contact id name content 1 homepage TEXT 2 contact TEXT 26. Horizontal Partitioning id uri name content 1 / homepage TEXT 2 /contact contact TEXT 3 /about about TEXT 4 /services services TEXT id uri name content 1 / homepage TEXT 3 /about about TEXT id uri name content 2 /contact contact TEXT 4 /services services TEXT 27. Cache Servers 28. Caching
29. Not highly scalable, great for configuration files. Distributed
30. Setup consistent hashing. Do not cache what cannot be re-created. 31. Caching
32. Start to cache fetches, invalidate cache on write and write new cache, always reading from the cache. 33. Distributed Caching
34. Server depends on the hash. 35. Hint use the memcached pecl extension. 36. The Read / Write Process
37. Job Servers 38. Job Servers (Message Queues)
39. Do nothing in real-time if you do not have to.
Hint gearman rocks and there is a pecl extension. 40. Mike Willbanks Blog:http://blog.digitalstruct.com Twitter : mwillbanks IRC : lubs on freenode Talk:http://joind.in/1375 Questions?