I Phone Dev Summit Prezo Guy Naor Final
Upcoming SlideShare
Loading in...5

Like this? Share it with your network


I Phone Dev Summit Prezo Guy Naor Final






Total Views
Views on SlideShare
Embed Views



0 Embeds 0

No embeds



Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment

I Phone Dev Summit Prezo Guy Naor Final Presentation Transcript

  • 1. Scaling Your iPhone Applications Guy Naor, CTO guy@mor.ph http://www.mor.ph
  • 2. A Self Introduction Been involved with technology since 1981 Led development of GoldMine for 4 years CTO of Famundo, LLC Contributed libraries and educational materials as open source Currently CTO for Morph Labs, Inc.
  • 3. The Need to Scale Future is Uncertain Save Money and Effort Optimize Risk/Expenditure Time is Short
  • 4. What can we scale? Web Servers Application Servers Static Files Storage Databases
  • 5. What technologies should you use? Simple to start with Able to grow Easy to replace Know what you are doing
  • 6. Specific Technologies Caching Rails caching, memcached Load balancing HAProxy, Pound, nginx DB Clustering PgPool II, MySQL Proxy, Oracle cluster, Slony
  • 7. Specific Technologies Distributed Storage S3, Nirvanix Computing EC2, GoGrid, AppEngine, Morph AppSpace/AppCloud CDN Akamai, CoralCDN, Amazon CDN (coming soon)
  • 8. How do you plan scaling? No “one size-fits-all” solution - depends on the specific application Check, measure, test and repeat Start from real bottlenecks - not from assumptions Choose the path of least resistance!
  • 9. Easy vs. Complex Do you know what’s easy? Better code and caching covers 90% of scaling needs! Web servers Application servers Messaging Storage Database
  • 10. Don’t overdo it Do you really need the “it”? ? 20 machine DB cluster? CDN for 10,000 pages a day? Mirrored Messaging servers?
  • 11. Future Proofing? Can you estimate your future needs now? Do you have time to test and analyze all scenarios? Proven technology Embrace Change Repeatability - Testing
  • 12. Case Study: Tracks @ Morph Open source app that implements GTD Originally stand-alone, now its a multi-tenant SaaS app (c/o Morph) iPhone Mobile Safari compatible Thousand of users since we launched it (mid 2008)
  • 13. Q&A
  • 14. Resources memcached http://www.danga.com/memcached Pound http://www.apsis.ch/pound HAProxy http://haproxy.1wt.eu nginx http://nginx.net PostgreSQL Clustering http://www.postgresql.org MySQL Clustering http://www.mysql.com/cluster Oracle Clustering http://www.oracle.com S3/EC2/CDN http://aws.amazon.com Nirvanix http://www.nirvanix.com GoGrid http://www.gogrid.com Google AppEngine http://appengine.google.com Morph Labs http://www.mor.ph Akamai: http://www.akamai.com CoralCDN: http://coralcdn.org