Download presentation
Presentation is loading. Please wait.
Published byAshlee Rich Modified over 8 years ago
1
www.Grid.org.il Cloud Computing: Pay-per-Use for On-Demand Scalability Developing Cloud Computing Applications with Open Source Technologies Shlomo Swidler CTO & co-Founder mydrifts.com 1 December 2008
2
www.Grid.org.il Cloud Computing: Pay-per-Use for On-Demand Scalability Agenda Open Source and Cloud Computing: a great match! Challenges faced by developers in the cloud...... and open source solutions
3
www.Grid.org.il Cloud Computing: Pay-per-Use for On-Demand Scalability Marketing platform for indie music promotion Help indie musicians find fans among social network users Cloud-based, using open source solutions Professional Services and Consulting Cloud computing, scalable web applications
4
www.Grid.org.il Cloud Computing: Pay-per-Use for On-Demand Scalability Open Source and Cloud Computing Same motivation: low ongoing costs mydrifts.com chose Amazon’s EC2 Rich set of complementary tools Many open source projects, too Freedom to choose OS, language, DB - the entire stack Choice of hardware
5
www.Grid.org.il Cloud Computing: Pay-per-Use for On-Demand Scalability Challenges Faced by Developers in the Cloud HOW?
6
www.Grid.org.il Cloud Computing: Pay-per-Use for On-Demand Scalability Developing Scalable Cloud Applications Optimize your database Use caching Use service pools
7
www.Grid.org.il Cloud Computing: Pay-per-Use for On-Demand Scalability Typical Application Architecture: Three Tiers Load Balancer Client Web Tier Business Logic Tier Database Tier
8
www.Grid.org.il Cloud Computing: Pay-per-Use for On-Demand Scalability Scaling the Database Tier: Optimize Queries Database Tier Optimize your database Know your queries Know your indexes De-normalize tables where needed Open-source: (MySQL) Use the slow query log EXPLAIN SELECT… is your friend MySQL has query analysis tools ($)
9
www.Grid.org.il Cloud Computing: Pay-per-Use for On-Demand Scalability DB Database Tier Cache to reduce database hits Not just query results Objects, partially rendered pages, etc… Open-source: memcached Scaling the Database Tier: Cache
10
www.Grid.org.il Cloud Computing: Pay-per-Use for On-Demand Scalability DB memcached Distributed in-memory cache Extremely low CPU usage Used by facebook, Wikipedia, Amazon, Yahoo, etc. Use “leftover” memory on a machine to serve as cache Great for cloud instances memcached server A memcached server C memcached server B
11
www.Grid.org.il Cloud Computing: Pay-per-Use for On-Demand Scalability Load Balancer Client DB Application with Scalable Database Tier Database Tier cache Web Tier Business Logic Tier
12
www.Grid.org.il Cloud Computing: Pay-per-Use for On-Demand Scalability Anatomy of the Business Logic Tier Components have different resource usage Requests flow through different components Limited scaling granularity
13
www.Grid.org.il Cloud Computing: Pay-per-Use for On-Demand Scalability Scaling the Business Logic Tier: Service Pools Pool A Pool B Pool CPool D Separate homogeneous pools of instances Each pool of services is independently scalable
14
www.Grid.org.il Cloud Computing: Pay-per-Use for On-Demand Scalability Status Logger Service Architecture of Service Pools Message Queue Service Pool Storage Msg Queue input output status work request Pool Manager Ingestor Message Queue
15
www.Grid.org.il Cloud Computing: Pay-per-Use for On-Demand Scalability Pool D Service Service D Pool B Service Service B Pool C Pool A DB Scalable Business Logic Tier Service Service A Service Service C Database Tier cache
16
www.Grid.org.il Cloud Computing: Pay-per-Use for On-Demand Scalability Open Source Service Pools on Amazon EC2 Lifeguard (Java) http://code.google.com/p/lifeguard see: http://developer.amazonwebservices.com/connect/entry.jspa?externalID=915 Kato (Ruby) http://rubyforge.org/projects/kato/ Implemented using boto (Python) see: http://developer.amazonwebservices.com/connect/entry.jspa?externalID=691
17
www.Grid.org.il Cloud Computing: Pay-per-Use for On-Demand Scalability Load Balancer Client DB Scalable Cloud Application Architecture Database Tier cache Web TierBusiness Logic Tier Pool
18
www.Grid.org.il Cloud Computing: Pay-per-Use for On-Demand Scalability Q & A
19
www.Grid.org.il Cloud Computing: Pay-per-Use for On-Demand Scalability Developing Cloud Computing Applications with Open Source Technologies Shlomo Swidler shlomo.swidler@mydrifts.com
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.