© 2011 MindTree Limited CONFIDENTIAL: For limited circulation only e-Commerce web app Architecture and Scalability Srinivas Bhagavatula.

Slides:



Advertisements
Similar presentations
Distributed Data Processing
Advertisements

Executional Architecture
Queuing and Caching to Scalability James Kovacs
SSRS 2008 Architecture Improvements Scale-out SSRS 2008 Report Engine Scalability Improvements.
Priority Research Direction (I/O Models, Abstractions and Software) Key challenges What will you do to address the challenges? – Develop newer I/O models.
Web Booster HTTP Server Acceleration for Lotus Domino.
Adding scalability to legacy PHP web applications Overview Mario A. Valdez-Ramirez.
Technical Architectures
Chapter 12: Web Usage Mining - An introduction
An Adaptable Benchmark for MPFS Performance Testing A Master Thesis Presentation Yubing Wang Advisor: Prof. Mark Claypool.
Copyright © 2002 Pearson Education, Inc. Slide 4-1 Choosing the Hardware for an E-commerce Site  Hardware platform  Refers to all the underlying computing.
With the Help of the Microsoft Azure Platform, Devbridge Group Provides Powerful, Flexible, and Scalable Responsive Web Solutions MICROSOFT AZURE ISV PROFILE:
What is adaptive web technology?  There is an increasingly large demand for software systems which are able to operate effectively in dynamic environments.
Advanced Distributed Software Architectures and Technology group ADSaT 1 Application Architectures Ian Gorton, Paul Greenfield.
Mint-user MINT Technical Overview October 8 th, 2010.
Microsoft Load Balancing and Clustering. Outline Introduction Load balancing Clustering.
Capacity Planning in SharePoint Capacity Planning Process of evaluating a technology … Deciding … Hardware … Variety of Ways Different Services.
E-Business Lecture 3 Website Development and Management Process.
Web Application Architecture: multi-tier (2-tier, 3-tier) & mvc
Web application architecture
#SPC271 IT-Pro, Level 300 Demo Heavy Session (Hopefully!)
1 Content Distribution Networks. 2 Replication Issues Request distribution: how to transparently distribute requests for content among replication servers.
How WebMD Maintains Operational Flexibility with NoSQL Rajeev Borborah, Sr. Director, Engineering Matt Wilson – Director, Production Engineering – Consumer.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse 2.
22-Aug-15 | 1 |1 | Help! I need more servers! What do I do? Scaling a PHP application.
Copyright © 2002 Pearson Education, Inc. Slide 4-1.
A Brief Overview by Aditya Dutt March 18 th ’ Aditya Inc.
SANPoint Foundation Suite HA Robert Soderbery Sr. Director, Product Management VERITAS Software Corporation.
Word Wide Cache Distributed Caching for the Distributed Enterprise.
Cloud Computing for the Enterprise November 18th, This work is licensed under a Creative Commons.
Computer System Architectures Computer System Software
Training Workshop Windows Azure Platform. Presentation Outline (hidden slide): Technical Level: 200 Intended Audience: Developers Objectives (what do.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 12 Slide 1 Distributed Systems Architectures.
What is Architecture  Architecture is a subjective thing, a shared understanding of a system’s design by the expert developers on a project  In the.
Database Architectures and the Web Session 5
Cloud Computing. What is Cloud Computing? Cloud computing is a model for enabling convenient, on-demand network access to a shared pool of configurable.
Invitation to Computer Science 5th Edition
Managing Service Metadata as Context The 2005 Istanbul International Computational Science & Engineering Conference (ICCSE2005) Mehmet S. Aktas
Advanced Web Forms with Databases Programming Right from the Start with Visual Basic.NET 1/e 13.
Austin code camp 2010 asp.net apps with azure table storage PRESENTED BY CHANDER SHEKHAR DHALL
JavaOne '99 Confidential Performance and Scalability of EJB-based applications Sriram Srinivasan Principal Engineer, BEA/WebLogic.
Copyright © 2006 Pilothouse Consulting Inc. All rights reserved. Overview Scale out architecture Servers, services, and topology in Central Administration.
Victor Mushkatin, MCSE, MCSD CORPORATION Alexander Zakonov, MCSE, MCSD Stephen Pelletier, MCSE.
SURENDER SARA 10GAS Building Corporate KPI’s
Software Performance Testing Based on Workload Characterization Elaine Weyuker Alberto Avritzer Joe Kondek Danielle Liu AT&T Labs.
Implementation - Part 2 CPS 181s March 18, Pieces of the Site-building Puzzle Page 180, figure 4.1.
BW Know-How Call : Performance Tuning dial-in phone numbers! U.S. Toll-free: (877) International: (612) Passcode: “BW”
The benefits of externalizing Web DMZ-as-a-Service in the Cloud James Smith, Sr. Security Sentrix
Remote Access Using Citrix Presentation Server December 6, 2006 Matthew Granger IT665.
Chapter 12: Web Usage Mining - An introduction Chapter written by Bamshad Mobasher Many slides are from a tutorial given by B. Berendt, B. Mobasher, M.
Lecture 22: Client-Server Software Engineering
Server to Server Communication Redis as an enabler Orion Free
Distributed Information Systems. Motivation ● To understand the problems that Web services try to solve it is helpful to understand how distributed information.
Bizfss File Sync and Sharing Solution, Built on Microsoft Azure, Allows Businesses to Sync, Share, Back Up Using Their Own Cloud Storage MICROSOFT AZURE.
6/23/2005 R. GARDNER OSG Baseline Services 1 OSG Baseline Services In my talk I’d like to discuss two questions:  What capabilities are we aiming for.
Windows Azure. Azure Application platform for the public cloud. Windows Azure is an operating system You can: – build a web application that runs.
Search Engine using Web Mining COMS E Web Enhanced Information Mgmt Prof. Gail Kaiser Presented By: Rupal Shah (UNI: rrs2146)
Scalable Data Scale #2 site on the Internet (time on site) >200 billion monthly page views Over 1 million developers in 180 countries.
Features Scalability Manage Services Deliver Features Faster Create Business Value Availability Latency Lifecycle Data Integrity Portability.
Overture Is a Unique Omni-channel E-commerce Platform that Leverages the Power of Microsoft Azure to Orchestrate Every Customer Transaction MICROSOFT AZURE.
E-commerce Architecture Ayşe Başar Bener. Client Server Architecture E-commerce is based on client/ server architecture –Client processes requesting service.
 Cloud Computing technology basics Platform Evolution Advantages  Microsoft Windows Azure technology basics Windows Azure – A Lap around the platform.
Improve the Performance, Scalability, and Reliability of Applications in the Cloud with jetNEXUS Load Balancer for Microsoft Azure MICROSOFT AZURE ISV.
Cofax Scalability Document Version Scaling Cofax in General The scalability of Cofax is directly related to the system software, hardware and network.
Course: Cluster, grid and cloud computing systems Course author: Prof
BUILD SECURE PRODUCTS AND SERVICES
Scalable Web Apps Target this solution to brand leaders responsible for customer engagement and roll-out of global marketing campaigns. Implement scenarios.
Scalable Web Apps Target this solution to brand leaders responsible for customer engagement and roll-out of global marketing campaigns. Implement scenarios.
SOA in Action Chapter 10 B. Ramamurthy 1/16/2019.
Technical Capabilities
Presentation transcript:

© 2011 MindTree Limited CONFIDENTIAL: For limited circulation only e-Commerce web app Architecture and Scalability Srinivas Bhagavatula

© 2011 MindTree Limited CONFIDENTIAL: For limited circulation only So, what’s in an E-Commerce Store? Slide 2 Catalogs State Discounts Inventory Fulfillment Social Integration Payment Note: This image is for illustrative purposes only. MindTree does not recommend or associate itself with either this site, or the products displayed here. Any copyrights belong to their respective owners Analytics Cross-sell Content Search Seasonality Ads Personalization Cust. Service

© 2011 MindTree Limited CONFIDENTIAL: For limited circulation only Conceptual View Slide 3

© 2011 MindTree Limited CONFIDENTIAL: For limited circulation only Application View Slide 4

© 2011 MindTree Limited CONFIDENTIAL: For limited circulation only The Key to Scalability… Slide 5 Ability of a system to handle or be enlarged to handle growing amounts of work gracefully … is to understand what it is Identify bottlenecks, and mitigate Identify load sources, and minimize … is to keep principles simple “How scalable do you want it?” (Do you have the NFRs?) … is to understand what’s expected If my look-to-book ratio is 90:10, can I scale differently? Do I always need to depend on the scalability of my partners? Do all of my subsystems need to scale equally? If my load is seasonal, should I be safe and overprovision? … is to exploit system characteristics

© 2011 MindTree Limited CONFIDENTIAL: For limited circulation only So what’s Different? Slide 6 Lots of integration – and dependencies Combo of content and Data Complicated rules spanning entities Rich and useful data to be analyzed and mined The breadwinner! Many different channels – and load Lots of these guys (hopefully!) Some typical usage patterns Lots of potential plus lots of load

© 2011 MindTree Limited CONFIDENTIAL: For limited circulation only Mapping to Scalability Considerations Multiple channels User behavior Social Content Slide 7 Content + Data Rules and analytics Integration – and dependencies

© 2011 MindTree Limited CONFIDENTIAL: For limited circulation only Scalability Strategies: Multiple Channels Scale out Minimize state for better load balancing, and to reduce memory footprint Use CDNs to farm out traffic to other sites, or consider A/A DC’s Exploit client capability, and minimize traffic Leverage device profile to serve appropriate content Frontends Use lightweight protocols Split between presentation services and interface services and choose granularity Services Slide 8

© 2011 MindTree Limited CONFIDENTIAL: For limited circulation only Scalability Strategies: Content, Social Traffic Content and data scale differently – so scale them independently Mash up content, UGC, and catalog data in a portal Leverage CMS’ caching as far as possible Consider publishing static HTML Organize CMS structures appropriately Use CDNs or servers appropriate to the purpose Content Separate onto other servers Leverage existing social network platforms UGC Slide 9

© 2011 MindTree Limited CONFIDENTIAL: For limited circulation only Scalability Strategies: User Behavior Slide 10 Separate reads and writes; scale out read nodes using replication / master-slave, … Split functionality between database instances Use sharding (carefully) to partition and scale out writes Choose optimistic reads (carefully) to minimize locks Data A fair bit of data changes slowly – cache aggressively: catalogs, content, … Try and cache inventory levels as well, based on thresholds Minimize I/O Create private clouds or leverage public / hybrid clouds Elasticity

© 2011 MindTree Limited CONFIDENTIAL: For limited circulation only Scalability Strategies: Rules and Analytics Slide 11 Classify into cross-sell rules, transaction processing rules Cross-sell rules more heavily used, use more data Pre-compute results - not everything needs to be real-time Reduce target datasets - not everything is against the universe Rules Separate analytics from transactional systems Run them off of their own instance Analytics

© 2011 MindTree Limited CONFIDENTIAL: For limited circulation only Scalability Strategies: Integration Slide 12 Use synchronous calls only when needed (for example, payments) Use queuing for durability and throttling Have a fallback mechanism: Last day’s inventory in case the inventory system isn’t coping Backend payment if payment gateway isn’t coping Consider batch mode integration vs. real-time always Dependencies

© 2011 MindTree Limited CONFIDENTIAL: For limited circulation only Strategies for Commerce Engines Use products (commercial | open source) for commerce, content, search, etc. Choose taxonomy and design carefully Catalogs, virtual catalogs, materialized catalogs, catalog sets, page snapshots, … Content taxonomy Cache appropriately Content caching at browser, CDN, CMS, commerce engine, … Commerce caching for catalogs, ad rules, pricing and inventory, … Scale appropriately Consider data volumes (catalog sizes, user base, …) for sharding or partitioning Follow vendor best practices for scaling Slide 13

© 2011 MindTree Limited CONFIDENTIAL: For limited circulation only General Scalability Strategies Use statelessness to scale better Choose shared-nothing models to scale best Choose shared-(something) or externalized state models with due considerations Reduce HTTP requests and payload Use techniques like file versioning, sprites, inline images, compression, … Be asynchronous where possible When calling backend systems, for example Choose faster (or lesser) I/O to minimize latency Cache aggressively Use faster I/O where possible Keep data small and archive aggressively to scale I/O and DBs Keep data close helps use network better and to reduce latency Write good code! Slide 14

© 2011 MindTree Limited CONFIDENTIAL: For limited circulation only In Summary Know what you are looking to achieve NFRs, business outlook Exploit usage characteristics Read/write ratios, acceptable lags, functional separation Design for scale Statelessness, service granularity, protocols Reduce load Pre-compute data, cache aggressively, offload Identify subsystem scalability needs Scale what’s needed, not everything Leverage others! Product capabilities, CDNs, cloud providers, social networking platforms Slide 15

© 2011 MindTree Limited CONFIDENTIAL: For limited circulation only Srinivas Bhagavatula