Nell’iperspazio con Rocket: il Framework Web di Rust!
Ultra-scale e-Commerce Transaction Services with Lean Middleware
1. Ultra-scale e-Commerce Transaction
Services with Lean Middleware
Paul Fremantle
CTO and Co-Founder
WSO2
paul@wso2.com
#pzfreo
http://pzf.fremantle.org
2. Contents
• Challenges at extreme scale deployment
• A case study – online retailer
• What is lean software?
• What are the challenges in Cloud?
• Why is Platform-as-a-Service important
4. Case Study: Problem Definition
• Millions of power sellers connecting directly to APIs
• Accessing APIs via slow and fast connections
• Load balancing to an ultra-scale backend cluster
• ~1bn large message transactions/day
6. The challenges of ultra-scale integration
• Absolute rigor for service/API definitions
• Peaks and troughs in load
– In this case “Cyber Monday”
• Slow clients, large messages
• Patch and system management
• Monitoring
– Monitor latency, memory, CPU, message size (by
“bucket”
• All at 5 mins, 15 mins, 1 hr, 24 hrs
– Alerting when the “queue” depth increases
9. Outcomes of this architecture
• Initial test production Q4/2009, ramp up during 2010
• Ramped up incrementally to 600m transactions/day
• On 36 JVM instances
• Expected to grow to 1bn/day during 1H2011
• Significantly more robust
• Handling around Other groups now using the ESB
• 80+ instances throughout the organization
• Looking add Governance Registry during 2011
• Better reliability, better scalability, lower TCO
11. Lean and Open Source
• Lean
– Triumph of the Lean Production System, John Krafcik, 1988, Sloan
Management Review
• What is “Lean Software”
– Designed to do just enough
• No muda
• Only focus on real requirements – not feature checklists
– Agile Development and Minimum Viable Product
• Decide as late as possible, Code as fast as possible
– Modular so that unnecessary code isn’t even loaded
– No duplicate code (unfortunately a typical result of M&A)
• Open Development model complements Lean strongly:
– Shared requirements, testing and architecture decisions
– Iterative Agile development model based on milestones and
continuous build
12. Why Lean and Open Source for our e-tailer?
• Lean
– Simpler cleaner configuration:
• Easier to configure, easier to fix
• Highly effective solution
– Lower hardware costs for the same workload
– Less money spent on consultants:
• 80 instances in production in a year with
approximately 1/3 person year onsite support
• Open Source
– Not the only factor in purchasing:
• Test production “shoot-out” between Open Source
and Proprietary
– Better insight, better partnership, community
16. Cloud Challenges
• Security
• Resource sharing inside an organization
– Central Limit Theorem and Private Cloud
• Agility
• Shared Nothing for Data, Cache and
Processing
– Designing systems so they scale effortlessly
• More than just Infrastructure-as-a-Service
– Getting the right shared services
17. Moore’s Law for Data
• Online data went from
– 5 exabytes in 2002 to
– 281 exabytes in 2009
That is doubling every 15 months
• The only way to deal with this expansion is to create
new applications
– Its not just the volume, but new types of data
– Need the “Industrial Revolution” for Software
Development
18. Platform-as-a-Service (PaaS)
• PaaS is about making it
simpler, faster and more repeatable
to develop, deploy and manage applications
– Shared Multi-tenant Services
– Such as Identity, Application Server, Queues, Logs,
Metering, Configuration Repository and Registry
– Allows developers to focus on the logic and design
– Commonality at a higher level creates efficiencies
(shared memory, better load distribution)
20. What to look for in a PaaS
• Lean
– All the same benefits are magnified in a cloud
– Efficiency that is valuable in fixed deployments is invaluable in large
dynamic deployments!
• Available on private, public, on-premise
– Getting locked into a specific public PaaS will have long term
repercussions
– Open Source is a huge protection against this
• The correct set of core “services”
– Not just App Server, but Identity, Registry, Data, Cache, ESB, BPMS,
Billing, Logging, etc
• Open Standard interfaces to common services
– Enables modular usage
• Self-service, multi-tenancy, elasticity, metering, incremental
deployment and testing
21. Stratos – Carbon as a PaaS
• A full middleware platform available as-a-service
• Based on OSGi
• Self-service, Multi-tenant, Elastic, Metered and Billed
• Completely Open Source under the Apache License
– Available in the cloud, on-premise and private cloud
• Isolates applications from the Infrastructure
– Currently supports vSphere, Eucalyptus, Ubuntu, Amazon
• Provides
– Application Server, ESB, Governance Registry, Business
Process Management Server, Business Activity Monitoring,
Rules, Data Services
http://wso2.org/downloads/stratos
23. What can a PaaS do for you?
• Integrate multiple internal and cloud data sources and
present via JSON to a Mobile Client
• Provide all the building blocks to build SaaS applications
• Give developers in your organization the perfect balance of
control and freedom to innovate
• Automate governance
A good PaaS is a platform for innovation
24. About WSO2
WSO2 is a fast-growing software company operating globally offering:
• A comprehensive on-premises platform - WSO2 Carbon
• A unique cloud platform - WSO2 Stratos
WSO2 has next generation vision and technology
• Called out as a visionary in the SOA market
• WSO2 Cloud and On-Premise platforms have a completely unified
architecture allowing WSO2 to scale up both aspects of the business in
parallel
In 5 years WSO2 has grown:
• More than 115 employees and more than 75 customers
• Doubled revenue and bookings every year
• The Open Source business model WSO2 implements creates strong customer
pull, high customer satisfaction, and a total of more than 1 million product
downloads
Company website: http://wso2.com
Developer Site and Open Source Forge: http://wso2.org
25. Thank You
Thank you very much for your time
If you wish to find out more, please come talk to
us at Booth #102!