Scaling AWS With Scalr

1,880 views

Published on

How Onista Inc. used Amazon EC2 and Scalr to effectively and efficiently scale its e-commerce platform

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,880
On SlideShare
0
From Embeds
0
Number of Embeds
27
Actions
Shares
0
Downloads
38
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Scaling AWS With Scalr

  1. 1. Tales of a Bootstrapped Startup Onista, Inc
  2. 2. What is Onista? <ul><li>Real-time price negotiation
  3. 3. Qualified sales leads and zero upfront cost
  4. 4. Leverage power of social network
  5. 5. Amalgam of eBay, LendingTree, Priceline, Alibaba and LinkedIn </li></ul>
  6. 7. The Beginning <ul><li>Custom PHP development
  7. 8. Huge Product Requirements Document (PRD)
  8. 9. Wire frames
  9. 10. Outsourced development </li></ul>
  10. 11. Classic Pitfalls <ul><li>Wire frames used as templates
  11. 12. No Architecture
  12. 13. No Logging
  13. 14. No Monitoring support
  14. 15. No Alerting support
  15. 16. No Reporting support
  16. 17. No Database Abstraction Layer
  17. 18. SQL embedded in the code </li></ul>
  18. 19. There's Gotta be a Better Way! <ul><li>Discover MVC </li><ul><li>Smarty templating engine
  19. 20. Refactor application logic
  20. 21. Refactor business logic </li></ul><li>Retrofit with Logging, Reporting and Alerting
  21. 22. Optimize the database
  22. 23. Improve security </li></ul>
  23. 24. The Birth Database Webserver Appserver Data
  24. 25. Problem <ul><li>Not Scalable
  25. 26. Will roll over and die
  26. 27. Can't cope with spikes </li></ul>
  27. 28. Enter the Cloud
  28. 29. Discover AWS <ul><li>S3
  29. 30. EC2
  30. 31. SimplePay </li></ul>
  31. 32. AWS Promise <ul><li>Infinitely Scalable Instances
  32. 33. Infinitely Large Storage
  33. 34. Stop thinking about capacity </li></ul>Is it really?
  34. 35. AWS Reality <ul><li>Infinitely Scalable Instances </li><ul><li>start unlimited instances </li></ul><li>Infinitely Large Storage </li><ul><li>code architecture needs to change </li></ul><li>Stop worrying about capacity </li><ul><li>start worrying about manual labor </li></ul><li>Throw your default assumptions away </li><ul><li>No persistent file system </li></ul></ul>
  35. 36. What is Scaling? <ul><li>The ability of a web system to respond to unexpected load without a denial of service
  36. 37. Two Kinds </li><ul><li>Manual Scaling
  37. 38. Auto Scaling </li></ul></ul>
  38. 39. Scalr <ul><li>Auto-Scaling
  39. 40. Self-Curing
  40. 41. Configuring
  41. 42. Monitoring
  42. 43. Open Source !
  43. 44. Free as in beer! </li></ul>
  44. 45. Scalr http://scalr.googlecode.com/files/network_diagram_smaller.gif
  45. 46. How does it work? http://scalr.googlecode.com/files/processes.png
  46. 47. Trails with Scalr <ul><li>Documentation </li><ul><li>Great User Guide
  47. 48. No Admin/Install guide :( </li></ul><li>Trial and Error
  48. 49. Needs experience with DNS server setup
  49. 50. Setup MySQL Master/Slave
  50. 51. Test different scenarios </li></ul>
  51. 52. Moment of Truth <ul><li>Self host Scalr </li><ul><li>One instance for itself
  52. 53. DNS Server </li></ul><li>Use Scalr.net
  53. 54. Use CloudInCode </li></ul>
  54. 55. Recommended Setup CloudInCode
  55. 56. Onista Setup CloudInCode Onista
  56. 57. Summary <ul><li>Scaling is hard </li><ul><li>Scalr makes it easy </li></ul><li>Don't manage Scalr yourself </li><ul><li>Use CloudInCode </li></ul><li>Software architecture is the important </li></ul>
  57. 58. Q &A

×