SlideShare ist ein Scribd-Unternehmen logo
1 von 15
e-Commerce web app Architecture and
Scalability
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
00000
Ads
Personalization
Cust. Service
Conceptual View
Slide 3
Application View
Slide 4
IntegrationMiddleware
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
IntegrationMiddleware
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 loadLots of these guys
(hopefully!)
Some typical usage
patterns
Lots of potential plus
lots of load
Mapping to Scalability Considerations
Multiple channels
User behavior
Social Content
Slide 7
Content + Data
Rules and analytics
Integration – and dependencies
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
• 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
• Use lightweight protocols
• Split between presentation services and interface services and choose
granularity
Services
Slide 8
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 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
• Separate onto other servers
• Leverage existing social network platforms
UGC
Slide 9
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
•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
•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•Create private clouds or leverage public / hybrid clouds
Elasticity
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
• 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
• Separate analytics from transactional systems
• Run them off of their own instance
Analytics
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
• 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
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
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
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

Weitere ähnliche Inhalte

Was ist angesagt?

Online Shop Project Report
Online Shop Project ReportOnline Shop Project Report
Online Shop Project ReportJayed Imran
 
e-Eommerce - Framework
e-Eommerce -  Frameworke-Eommerce -  Framework
e-Eommerce - FrameworkSnehasish Mandal
 
Cookies and sessions
Cookies and sessionsCookies and sessions
Cookies and sessionsLena Petsenchuk
 
Supply chain management IN E COMMERCE
Supply chain management IN E COMMERCESupply chain management IN E COMMERCE
Supply chain management IN E COMMERCEVivek Tyagi
 
Some E-commerce Applications
Some E-commerce ApplicationsSome E-commerce Applications
Some E-commerce ApplicationsAnuj Gupta
 
Online shopping Report
Online shopping ReportOnline shopping Report
Online shopping ReportPragnya Dash
 
Web Development on Web Project Report
Web Development on Web Project ReportWeb Development on Web Project Report
Web Development on Web Project ReportMilind Gokhale
 
Web based online shopping system Presentation slide
Web based online shopping system Presentation  slideWeb based online shopping system Presentation  slide
Web based online shopping system Presentation slideRakibul Hasan Pranto
 
e-commerce architecture
e-commerce architecturee-commerce architecture
e-commerce architecturedeepika kumar
 
Online Shopping based on ASP .NET
Online Shopping based on ASP .NET Online Shopping based on ASP .NET
Online Shopping based on ASP .NET Pragnya Dash
 
SRS For Online Store
SRS For Online StoreSRS For Online Store
SRS For Online StoreAhsan Rizwan
 
Online shopping prasentation
Online shopping prasentationOnline shopping prasentation
Online shopping prasentationAtul Kumar
 
E-commerce documentation
E-commerce documentationE-commerce documentation
E-commerce documentationSohel Parvez
 
e-commerce web development project report (Bookz report)
e-commerce web development project report (Bookz report)e-commerce web development project report (Bookz report)
e-commerce web development project report (Bookz report)Mudasir Ahmad Bhat
 
E commerce website Project Presentation
E commerce website Project PresentationE commerce website Project Presentation
E commerce website Project PresentationZT MESH
 
Online Shopping Full Project Presentation (20 slides)
Online Shopping Full Project Presentation (20 slides)Online Shopping Full Project Presentation (20 slides)
Online Shopping Full Project Presentation (20 slides)Krishna Mohan Shakya
 
online-shopping-documentation-srs for TYBSCIT sem 6
 online-shopping-documentation-srs for TYBSCIT sem 6 online-shopping-documentation-srs for TYBSCIT sem 6
online-shopping-documentation-srs for TYBSCIT sem 6YogeshDhamke2
 

Was ist angesagt? (20)

Online Shop Project Report
Online Shop Project ReportOnline Shop Project Report
Online Shop Project Report
 
e-Eommerce - Framework
e-Eommerce -  Frameworke-Eommerce -  Framework
e-Eommerce - Framework
 
Cookies and sessions
Cookies and sessionsCookies and sessions
Cookies and sessions
 
Supply chain management IN E COMMERCE
Supply chain management IN E COMMERCESupply chain management IN E COMMERCE
Supply chain management IN E COMMERCE
 
Some E-commerce Applications
Some E-commerce ApplicationsSome E-commerce Applications
Some E-commerce Applications
 
Xpath presentation
Xpath presentationXpath presentation
Xpath presentation
 
Online shopping Report
Online shopping ReportOnline shopping Report
Online shopping Report
 
Web Development on Web Project Report
Web Development on Web Project ReportWeb Development on Web Project Report
Web Development on Web Project Report
 
Web based online shopping system Presentation slide
Web based online shopping system Presentation  slideWeb based online shopping system Presentation  slide
Web based online shopping system Presentation slide
 
Online shopping Project
Online shopping Project Online shopping Project
Online shopping Project
 
e-commerce architecture
e-commerce architecturee-commerce architecture
e-commerce architecture
 
Online Shopping based on ASP .NET
Online Shopping based on ASP .NET Online Shopping based on ASP .NET
Online Shopping based on ASP .NET
 
SRS For Online Store
SRS For Online StoreSRS For Online Store
SRS For Online Store
 
Online shopping prasentation
Online shopping prasentationOnline shopping prasentation
Online shopping prasentation
 
E-commerce documentation
E-commerce documentationE-commerce documentation
E-commerce documentation
 
e-commerce web development project report (Bookz report)
e-commerce web development project report (Bookz report)e-commerce web development project report (Bookz report)
e-commerce web development project report (Bookz report)
 
E commerce website Project Presentation
E commerce website Project PresentationE commerce website Project Presentation
E commerce website Project Presentation
 
Online Shopping Full Project Presentation (20 slides)
Online Shopping Full Project Presentation (20 slides)Online Shopping Full Project Presentation (20 slides)
Online Shopping Full Project Presentation (20 slides)
 
Shopping Cart
Shopping CartShopping Cart
Shopping Cart
 
online-shopping-documentation-srs for TYBSCIT sem 6
 online-shopping-documentation-srs for TYBSCIT sem 6 online-shopping-documentation-srs for TYBSCIT sem 6
online-shopping-documentation-srs for TYBSCIT sem 6
 

Andere mochten auch

Architecture for B2B models in Ecommerce
Architecture for B2B models in EcommerceArchitecture for B2B models in Ecommerce
Architecture for B2B models in EcommerceNirbhik Jangid
 
B2B and e-commerce Architecture
B2B and e-commerce ArchitectureB2B and e-commerce Architecture
B2B and e-commerce ArchitectureSonia Grover
 
Architecture of a Modern Web App
Architecture of a Modern Web AppArchitecture of a Modern Web App
Architecture of a Modern Web Appscothis
 
Introduction to Web Architecture
Introduction to Web ArchitectureIntroduction to Web Architecture
Introduction to Web ArchitectureChamnap Chhorn
 
Design and Instantiation of Reference Architecture for Pluggable Service Plat...
Design and Instantiation of Reference Architecture for Pluggable Service Plat...Design and Instantiation of Reference Architecture for Pluggable Service Plat...
Design and Instantiation of Reference Architecture for Pluggable Service Plat...Mohammad Anggasta Paramartha
 
7 Stages of Scaling Web Applications
7 Stages of Scaling Web Applications7 Stages of Scaling Web Applications
7 Stages of Scaling Web ApplicationsDavid Mitzenmacher
 
B2B and Ecommerce (Relation, Market, Growth & Future)
B2B and Ecommerce (Relation, Market, Growth & Future)B2B and Ecommerce (Relation, Market, Growth & Future)
B2B and Ecommerce (Relation, Market, Growth & Future)Nirbhik Jangid
 
Building a Scalable Architecture for web apps
Building a Scalable Architecture for web appsBuilding a Scalable Architecture for web apps
Building a Scalable Architecture for web appsDirecti Group
 
E commerce ( system analysis ) chapter 4
E commerce ( system analysis ) chapter 4E commerce ( system analysis ) chapter 4
E commerce ( system analysis ) chapter 4Qamar Farooq
 
eCommerce Platforms - an introduction
eCommerce Platforms - an introductioneCommerce Platforms - an introduction
eCommerce Platforms - an introductionBen Adams
 
facebook architecture for 600M users
facebook architecture for 600M usersfacebook architecture for 600M users
facebook architecture for 600M usersJongyoon Choi
 
E-Commerce Basics
E-Commerce BasicsE-Commerce Basics
E-Commerce BasicsAl Muzahid
 
Retail Industry Enterprise Architecture Review
Retail Industry Enterprise Architecture ReviewRetail Industry Enterprise Architecture Review
Retail Industry Enterprise Architecture ReviewLakshmana Kattula
 
B2B Ecommerce: Design Principles and Best Practices to Boost Sales
B2B Ecommerce: Design Principles and Best Practices to Boost SalesB2B Ecommerce: Design Principles and Best Practices to Boost Sales
B2B Ecommerce: Design Principles and Best Practices to Boost SalesAlex Schmelkin
 
Considerations when selecting a SaaS eCommerce vendor
Considerations when selecting a SaaS eCommerce vendorConsiderations when selecting a SaaS eCommerce vendor
Considerations when selecting a SaaS eCommerce vendorBen Adams
 
Creating a Global E-Commerce Website With E-Business Suite and Fusion Middleware
Creating a Global E-Commerce Website With E-Business Suite and Fusion MiddlewareCreating a Global E-Commerce Website With E-Business Suite and Fusion Middleware
Creating a Global E-Commerce Website With E-Business Suite and Fusion MiddlewareBrian Huff
 
Big Data Technology Stack : Nutshell
Big Data Technology Stack : NutshellBig Data Technology Stack : Nutshell
Big Data Technology Stack : NutshellKhalid Imran
 

Andere mochten auch (20)

Architecture for B2B models in Ecommerce
Architecture for B2B models in EcommerceArchitecture for B2B models in Ecommerce
Architecture for B2B models in Ecommerce
 
B2B and e-commerce Architecture
B2B and e-commerce ArchitectureB2B and e-commerce Architecture
B2B and e-commerce Architecture
 
Architecture of a Modern Web App
Architecture of a Modern Web AppArchitecture of a Modern Web App
Architecture of a Modern Web App
 
Introduction to Web Architecture
Introduction to Web ArchitectureIntroduction to Web Architecture
Introduction to Web Architecture
 
Design and Instantiation of Reference Architecture for Pluggable Service Plat...
Design and Instantiation of Reference Architecture for Pluggable Service Plat...Design and Instantiation of Reference Architecture for Pluggable Service Plat...
Design and Instantiation of Reference Architecture for Pluggable Service Plat...
 
B2B eCommerce Ecosystem
B2B eCommerce EcosystemB2B eCommerce Ecosystem
B2B eCommerce Ecosystem
 
7 Stages of Scaling Web Applications
7 Stages of Scaling Web Applications7 Stages of Scaling Web Applications
7 Stages of Scaling Web Applications
 
B2B and Ecommerce (Relation, Market, Growth & Future)
B2B and Ecommerce (Relation, Market, Growth & Future)B2B and Ecommerce (Relation, Market, Growth & Future)
B2B and Ecommerce (Relation, Market, Growth & Future)
 
Building a Scalable Architecture for web apps
Building a Scalable Architecture for web appsBuilding a Scalable Architecture for web apps
Building a Scalable Architecture for web apps
 
E commerce ( system analysis ) chapter 4
E commerce ( system analysis ) chapter 4E commerce ( system analysis ) chapter 4
E commerce ( system analysis ) chapter 4
 
eCommerce Platforms - an introduction
eCommerce Platforms - an introductioneCommerce Platforms - an introduction
eCommerce Platforms - an introduction
 
facebook architecture for 600M users
facebook architecture for 600M usersfacebook architecture for 600M users
facebook architecture for 600M users
 
E-Commerce Basics
E-Commerce BasicsE-Commerce Basics
E-Commerce Basics
 
Retail Industry Enterprise Architecture Review
Retail Industry Enterprise Architecture ReviewRetail Industry Enterprise Architecture Review
Retail Industry Enterprise Architecture Review
 
B2B Ecommerce: Design Principles and Best Practices to Boost Sales
B2B Ecommerce: Design Principles and Best Practices to Boost SalesB2B Ecommerce: Design Principles and Best Practices to Boost Sales
B2B Ecommerce: Design Principles and Best Practices to Boost Sales
 
E-Commerce PPT
E-Commerce PPTE-Commerce PPT
E-Commerce PPT
 
E commerce
E commerceE commerce
E commerce
 
Considerations when selecting a SaaS eCommerce vendor
Considerations when selecting a SaaS eCommerce vendorConsiderations when selecting a SaaS eCommerce vendor
Considerations when selecting a SaaS eCommerce vendor
 
Creating a Global E-Commerce Website With E-Business Suite and Fusion Middleware
Creating a Global E-Commerce Website With E-Business Suite and Fusion MiddlewareCreating a Global E-Commerce Website With E-Business Suite and Fusion Middleware
Creating a Global E-Commerce Website With E-Business Suite and Fusion Middleware
 
Big Data Technology Stack : Nutshell
Big Data Technology Stack : NutshellBig Data Technology Stack : Nutshell
Big Data Technology Stack : Nutshell
 

Ähnlich wie e-Commerce web app Architecture and Scalability

Business Intelligence Data Warehouse System
Business Intelligence Data Warehouse SystemBusiness Intelligence Data Warehouse System
Business Intelligence Data Warehouse SystemKiran kumar
 
Talent Base: Best practises in a WCM project
Talent Base: Best practises in a WCM projectTalent Base: Best practises in a WCM project
Talent Base: Best practises in a WCM projectLoihde Advisory
 
Data warehousev2.1
Data warehousev2.1Data warehousev2.1
Data warehousev2.1Tuan Luong
 
AWS re:Invent 2016: Start Your Cost Optimization Program: Learning from Intui...
AWS re:Invent 2016: Start Your Cost Optimization Program: Learning from Intui...AWS re:Invent 2016: Start Your Cost Optimization Program: Learning from Intui...
AWS re:Invent 2016: Start Your Cost Optimization Program: Learning from Intui...Amazon Web Services
 
Unit 3 part ii Data mining
Unit 3 part ii Data miningUnit 3 part ii Data mining
Unit 3 part ii Data miningDhilsath Fathima
 
GraphConnect Europe 2016 - Faster Lap Times with Neo4j - Srinivas Suravarapu
GraphConnect Europe 2016 - Faster Lap Times with Neo4j - Srinivas SuravarapuGraphConnect Europe 2016 - Faster Lap Times with Neo4j - Srinivas Suravarapu
GraphConnect Europe 2016 - Faster Lap Times with Neo4j - Srinivas SuravarapuNeo4j
 
The Shifting Landscape of Data Integration
The Shifting Landscape of Data IntegrationThe Shifting Landscape of Data Integration
The Shifting Landscape of Data IntegrationDATAVERSITY
 
Automating Business Insights on AWS,
Automating Business Insights on AWS, Automating Business Insights on AWS,
Automating Business Insights on AWS, Amazon Web Services
 
Barga Galvanize Sept 2015
Barga Galvanize Sept 2015Barga Galvanize Sept 2015
Barga Galvanize Sept 2015Roger Barga
 
The final frontier
The final frontierThe final frontier
The final frontierTerry Bunio
 
Introduction to data mining and data warehousing
Introduction to data mining and data warehousingIntroduction to data mining and data warehousing
Introduction to data mining and data warehousingEr. Nawaraj Bhandari
 
Best practices with development of enterprise-scale SharePoint solutions - Pa...
Best practices with development of enterprise-scale SharePoint solutions - Pa...Best practices with development of enterprise-scale SharePoint solutions - Pa...
Best practices with development of enterprise-scale SharePoint solutions - Pa...SPC Adriatics
 
Intro to Data Loss Prevention in SharePoint 2016
Intro to Data Loss Prevention in SharePoint 2016Intro to Data Loss Prevention in SharePoint 2016
Intro to Data Loss Prevention in SharePoint 2016Craig Jahnke
 
Data Lakes - The Key to a Scalable Data Architecture
Data Lakes - The Key to a Scalable Data ArchitectureData Lakes - The Key to a Scalable Data Architecture
Data Lakes - The Key to a Scalable Data ArchitectureZaloni
 
presentationofism-complete-1-100227093028-phpapp01.pptx
presentationofism-complete-1-100227093028-phpapp01.pptxpresentationofism-complete-1-100227093028-phpapp01.pptx
presentationofism-complete-1-100227093028-phpapp01.pptxvipush1
 
Episode 4: Personalization Best Practices
Episode 4: Personalization Best PracticesEpisode 4: Personalization Best Practices
Episode 4: Personalization Best PracticesAcquia
 
Data warehousing
Data warehousingData warehousing
Data warehousingNabarun Paul
 
Strata San Jose 2017 - Ben Sharma Presentation
Strata San Jose 2017 - Ben Sharma PresentationStrata San Jose 2017 - Ben Sharma Presentation
Strata San Jose 2017 - Ben Sharma PresentationZaloni
 
ERP technology Areas.pptx
ERP technology Areas.pptxERP technology Areas.pptx
ERP technology Areas.pptxssuserdd904d
 

Ähnlich wie e-Commerce web app Architecture and Scalability (20)

Business Intelligence Data Warehouse System
Business Intelligence Data Warehouse SystemBusiness Intelligence Data Warehouse System
Business Intelligence Data Warehouse System
 
Talent Base: Best practises in a WCM project
Talent Base: Best practises in a WCM projectTalent Base: Best practises in a WCM project
Talent Base: Best practises in a WCM project
 
Data warehousev2.1
Data warehousev2.1Data warehousev2.1
Data warehousev2.1
 
AWS re:Invent 2016: Start Your Cost Optimization Program: Learning from Intui...
AWS re:Invent 2016: Start Your Cost Optimization Program: Learning from Intui...AWS re:Invent 2016: Start Your Cost Optimization Program: Learning from Intui...
AWS re:Invent 2016: Start Your Cost Optimization Program: Learning from Intui...
 
Unit 3 part ii Data mining
Unit 3 part ii Data miningUnit 3 part ii Data mining
Unit 3 part ii Data mining
 
GraphConnect Europe 2016 - Faster Lap Times with Neo4j - Srinivas Suravarapu
GraphConnect Europe 2016 - Faster Lap Times with Neo4j - Srinivas SuravarapuGraphConnect Europe 2016 - Faster Lap Times with Neo4j - Srinivas Suravarapu
GraphConnect Europe 2016 - Faster Lap Times with Neo4j - Srinivas Suravarapu
 
The Shifting Landscape of Data Integration
The Shifting Landscape of Data IntegrationThe Shifting Landscape of Data Integration
The Shifting Landscape of Data Integration
 
Automating Business Insights on AWS,
Automating Business Insights on AWS, Automating Business Insights on AWS,
Automating Business Insights on AWS,
 
Data mining wrhousing-lec
Data mining wrhousing-lecData mining wrhousing-lec
Data mining wrhousing-lec
 
Barga Galvanize Sept 2015
Barga Galvanize Sept 2015Barga Galvanize Sept 2015
Barga Galvanize Sept 2015
 
The final frontier
The final frontierThe final frontier
The final frontier
 
Introduction to data mining and data warehousing
Introduction to data mining and data warehousingIntroduction to data mining and data warehousing
Introduction to data mining and data warehousing
 
Best practices with development of enterprise-scale SharePoint solutions - Pa...
Best practices with development of enterprise-scale SharePoint solutions - Pa...Best practices with development of enterprise-scale SharePoint solutions - Pa...
Best practices with development of enterprise-scale SharePoint solutions - Pa...
 
Intro to Data Loss Prevention in SharePoint 2016
Intro to Data Loss Prevention in SharePoint 2016Intro to Data Loss Prevention in SharePoint 2016
Intro to Data Loss Prevention in SharePoint 2016
 
Data Lakes - The Key to a Scalable Data Architecture
Data Lakes - The Key to a Scalable Data ArchitectureData Lakes - The Key to a Scalable Data Architecture
Data Lakes - The Key to a Scalable Data Architecture
 
presentationofism-complete-1-100227093028-phpapp01.pptx
presentationofism-complete-1-100227093028-phpapp01.pptxpresentationofism-complete-1-100227093028-phpapp01.pptx
presentationofism-complete-1-100227093028-phpapp01.pptx
 
Episode 4: Personalization Best Practices
Episode 4: Personalization Best PracticesEpisode 4: Personalization Best Practices
Episode 4: Personalization Best Practices
 
Data warehousing
Data warehousingData warehousing
Data warehousing
 
Strata San Jose 2017 - Ben Sharma Presentation
Strata San Jose 2017 - Ben Sharma PresentationStrata San Jose 2017 - Ben Sharma Presentation
Strata San Jose 2017 - Ben Sharma Presentation
 
ERP technology Areas.pptx
ERP technology Areas.pptxERP technology Areas.pptx
ERP technology Areas.pptx
 

Mehr von Aryashree Pritikrishna

A life in service to God and humanity
A life in service to God and humanityA life in service to God and humanity
A life in service to God and humanityAryashree Pritikrishna
 
Updating drupal core in a git way
Updating drupal core in a git wayUpdating drupal core in a git way
Updating drupal core in a git wayAryashree Pritikrishna
 
Reference Model for ISEB Certificates in Enterprise and Solution Architecture
Reference Model for ISEB  Certificates in Enterprise  and Solution ArchitectureReference Model for ISEB  Certificates in Enterprise  and Solution Architecture
Reference Model for ISEB Certificates in Enterprise and Solution ArchitectureAryashree Pritikrishna
 
Lets Make our Web Applications Secure
Lets Make our Web Applications SecureLets Make our Web Applications Secure
Lets Make our Web Applications SecureAryashree Pritikrishna
 
User Experience for Large-scale Web-Applications
User Experience for Large-scale Web-ApplicationsUser Experience for Large-scale Web-Applications
User Experience for Large-scale Web-ApplicationsAryashree Pritikrishna
 
txtWeb : Imagine the Internet and more on SMS
txtWeb : Imagine the Internet and more on SMStxtWeb : Imagine the Internet and more on SMS
txtWeb : Imagine the Internet and more on SMSAryashree Pritikrishna
 

Mehr von Aryashree Pritikrishna (11)

Mangalacarana Prayers
Mangalacarana PrayersMangalacarana Prayers
Mangalacarana Prayers
 
Parikshit Maharaj
Parikshit MaharajParikshit Maharaj
Parikshit Maharaj
 
Narsimha Chaturdashi Special
Narsimha Chaturdashi SpecialNarsimha Chaturdashi Special
Narsimha Chaturdashi Special
 
A life in service to God and humanity
A life in service to God and humanityA life in service to God and humanity
A life in service to God and humanity
 
Updating drupal core in a git way
Updating drupal core in a git wayUpdating drupal core in a git way
Updating drupal core in a git way
 
Reference Model for ISEB Certificates in Enterprise and Solution Architecture
Reference Model for ISEB  Certificates in Enterprise  and Solution ArchitectureReference Model for ISEB  Certificates in Enterprise  and Solution Architecture
Reference Model for ISEB Certificates in Enterprise and Solution Architecture
 
Get started with angular js
Get started with angular jsGet started with angular js
Get started with angular js
 
Drupal project management
Drupal project managementDrupal project management
Drupal project management
 
Lets Make our Web Applications Secure
Lets Make our Web Applications SecureLets Make our Web Applications Secure
Lets Make our Web Applications Secure
 
User Experience for Large-scale Web-Applications
User Experience for Large-scale Web-ApplicationsUser Experience for Large-scale Web-Applications
User Experience for Large-scale Web-Applications
 
txtWeb : Imagine the Internet and more on SMS
txtWeb : Imagine the Internet and more on SMStxtWeb : Imagine the Internet and more on SMS
txtWeb : Imagine the Internet and more on SMS
 

KĂźrzlich hochgeladen

Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatYousafMalik24
 
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYKayeClaireEstoconing
 
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSGRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSJoshuaGantuangco2
 
FILIPINO PSYCHology sikolohiyang pilipino
FILIPINO PSYCHology sikolohiyang pilipinoFILIPINO PSYCHology sikolohiyang pilipino
FILIPINO PSYCHology sikolohiyang pilipinojohnmickonozaleda
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)lakshayb543
 
Proudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxProudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxthorishapillay1
 
How to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPHow to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPCeline George
 
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4MiaBumagat1
 
USPSÂŽ Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPSÂŽ Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...USPSÂŽ Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPSÂŽ Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...Postal Advocate Inc.
 
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...JhezDiaz1
 
Judging the Relevance and worth of ideas part 2.pptx
Judging the Relevance  and worth of ideas part 2.pptxJudging the Relevance  and worth of ideas part 2.pptx
Judging the Relevance and worth of ideas part 2.pptxSherlyMaeNeri
 
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptxMULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptxAnupkumar Sharma
 
Science 7 Quarter 4 Module 2: Natural Resources.pptx
Science 7 Quarter 4 Module 2: Natural Resources.pptxScience 7 Quarter 4 Module 2: Natural Resources.pptx
Science 7 Quarter 4 Module 2: Natural Resources.pptxMaryGraceBautista27
 
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdfInclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdfTechSoup
 
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Celine George
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Celine George
 
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdfLike-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdfMr Bounab Samir
 

KĂźrzlich hochgeladen (20)

Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice great
 
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
 
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSGRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
 
FILIPINO PSYCHology sikolohiyang pilipino
FILIPINO PSYCHology sikolohiyang pilipinoFILIPINO PSYCHology sikolohiyang pilipino
FILIPINO PSYCHology sikolohiyang pilipino
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
 
Proudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxProudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptx
 
How to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPHow to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERP
 
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
 
ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4
 
USPSÂŽ Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPSÂŽ Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...USPSÂŽ Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPSÂŽ Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
 
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
 
Judging the Relevance and worth of ideas part 2.pptx
Judging the Relevance  and worth of ideas part 2.pptxJudging the Relevance  and worth of ideas part 2.pptx
Judging the Relevance and worth of ideas part 2.pptx
 
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptxMULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
 
YOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptx
YOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptxYOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptx
YOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptx
 
Science 7 Quarter 4 Module 2: Natural Resources.pptx
Science 7 Quarter 4 Module 2: Natural Resources.pptxScience 7 Quarter 4 Module 2: Natural Resources.pptx
Science 7 Quarter 4 Module 2: Natural Resources.pptx
 
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdfInclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
 
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
 
Raw materials used in Herbal Cosmetics.pptx
Raw materials used in Herbal Cosmetics.pptxRaw materials used in Herbal Cosmetics.pptx
Raw materials used in Herbal Cosmetics.pptx
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17
 
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdfLike-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
 

e-Commerce web app Architecture and Scalability

  • 1. e-Commerce web app Architecture and Scalability
  • 2. 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 00000 Ads Personalization Cust. Service
  • 5. 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
  • 6. IntegrationMiddleware 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 loadLots of these guys (hopefully!) Some typical usage patterns Lots of potential plus lots of load
  • 7. Mapping to Scalability Considerations Multiple channels User behavior Social Content Slide 7 Content + Data Rules and analytics Integration – and dependencies
  • 8. 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 • 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 • Use lightweight protocols • Split between presentation services and interface services and choose granularity Services Slide 8
  • 9. 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 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 • Separate onto other servers • Leverage existing social network platforms UGC Slide 9
  • 10. 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 •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 •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•Create private clouds or leverage public / hybrid clouds Elasticity
  • 11. 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 • 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 • Separate analytics from transactional systems • Run them off of their own instance Analytics
  • 12. 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 • 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
  • 13. 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
  • 14. 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
  • 15. 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