SlideShare a Scribd company logo
1 of 17
Windows Server
AppFabric Cache
Pradeep S
pradeep.s@neudesic.com
Objective
   Caching Mechanism and Problems
   Caching using Windows Server AppFabric Cache
   Windows Server AppFabric Cache Overview
   Design Considerations for Cache Implementation
   Case Study
Caching Mechanism and Problems

   Long load
     time &                                              Users see different
 Speeds up the
     delays              Load Balancer                data, depending on the
  application                                        server they get routed to!

                 Cache                       Cache
   Reduces
   database
     load


           High load
            on the       V1 V2
           database
                                    Update
                                                                                  3
Solution: Distributed Caching Using
AppFabric Cache

                   Load Balancer




                 Unified Cache View

     Cache
   Invalidated                          New version of data
                                         placed in cache



                    V1 V2

                               Update
                                                              4
AppFabric Cache Physical
Architecture
                                  Cache Cluster

                     Cache           Cache        Cache
                      Host            Host         Host
   Cache-enabled
    Application
       Server




                   Cache Server    Cache Server   Cache Server
Cache Structure Overview
AppFabric Cache Advantages
   Rich API
        Can be NET 4.5 or .NET 4.0 or .NET 3.5 SP1
        Can be configured in code or config
        Read-Through/Write-Behind Pattern
   Scalable
        Can be Scaled out
   Performance
        Typically linear as more nodes are added
        LocalCache increases raw performance
   High Availability
        Provides cache data-protection by saving 2 copies of cached data on different nodes
        Safeguards against cache node failures
   Management
   Security
Management
   Caches and Cache Cluster are provisioned and managed through
    Windows PowerShell
   ETW Tracing and Logging Available on both Client and Server
   Rich set of performance monitor counters
Security
   Domain
       Authentication in AD, Authorisation in AppFabric
       Only authorised servers join clusters
       Only authorised clients connect to clusters
   Workgroup
       Authentication in network share, Authorisation in AppFabric
   Transport Level Security
       Signing and Encryption
Design Considerations for Caching

   Data Categorization
   Object Removal
   Cache-Source Coherency
   Programming Patterns
   Administration
   Security
   Availability
Data Categorization
   Reference Data
       “Read-Heavy”, Shared between users (concurrent access)
       Examples: Product description, customer profile data
   Resource Data
       Read-Write, Shared between users (concurrent access)
       Examples: Number of units in stock, online survey results
   Activity Data
       Read-Write, User specific (no concurrent access)
       Examples: Shopping cart content, survey response



                                                                    1
                                                                    1
Object Removal
   Explicit Deletion
       User explicitly removes an item from the cache
   Expiration
       When an object is proactively removed from the cache because of
        staleness
   Eviction
       When an object is reactively removed from the cache due to low
        memory conditions
Cache-Source Coherency

   Pre-load data into Cache
       Example: Loading products catalog details into cache using bootstrap
        process when application starts
   Maintain Cache-Source coherency every time source is updated
Programming Patterns

   Cache-aside Pattern
       Explicitly write code to check if data exists in cache, if not, read from
        database and place a copy in cache
   Read-through and Write-behind
       Read: If data not found in cache, read through a specialized provider
       Write: Cache stores the data in memory and writes the data to
        permanent storage using specialized provider
Case Study: Dealer Management
Software
Problem
   SaaS based Dealer Management Software from industry leading
    provider had to share the data between many of its sub-applications
    in-order to complete the business process flow. Each application
    would query the same data and act upon. Some of the data comes
    from legacy Crm application and access times were considerable
    and this led to slowing down performance of the software.
Case Study: Dealer Management
Software
Solution
                                                                         ASP.Net Session Provider was built and
                                                                          used across applications to share data.
  Enrollment                   Financial
                               Mgmt. App
                                                        Fulfillment       Session provider used AppFabric Cache
  App                                                   App               as a primary persistent storage and SQL
                                                                          Server as secondary storage. This
                                                                          reduced repeated access for same
                                                                          data across applications and load on
                     ASP.Net Session Provider                             Crm system.
                                                                         Reference (“Read Heavy”) data was
  Cache Cluster
                                                                          loaded into cache using a bootstrap
                                                                          process. This reduced data load times
                                                                          for certain data at first request.
                                                                         Central administration of cache through
                  Primary Cache Host
                                                                          PowerShell Scripts
                                           Cache Host
                                                                         Resulted in significant performance
                                                                          boost
Questions ?

More Related Content

What's hot

WSI33 - Advanced Performance Tactics for IBM WebSphere Application Server
WSI33 - Advanced Performance Tactics for IBM WebSphere Application ServerWSI33 - Advanced Performance Tactics for IBM WebSphere Application Server
WSI33 - Advanced Performance Tactics for IBM WebSphere Application ServerHendrik van Run
 
Edge 2016 SCL-2484: a software defined scalable and flexible container manage...
Edge 2016 SCL-2484: a software defined scalable and flexible container manage...Edge 2016 SCL-2484: a software defined scalable and flexible container manage...
Edge 2016 SCL-2484: a software defined scalable and flexible container manage...Yong Feng
 
Enterprise Manager DBaaS
Enterprise Manager DBaaSEnterprise Manager DBaaS
Enterprise Manager DBaaSomnidba
 
SharePoint and Large Scale SQL Deployments - NZSPC
SharePoint and Large Scale SQL Deployments - NZSPCSharePoint and Large Scale SQL Deployments - NZSPC
SharePoint and Large Scale SQL Deployments - NZSPCguest7c2e070
 
Tarabica 2019 (Belgrade, Serbia) - SQL Server performance troubleshooting
Tarabica 2019 (Belgrade, Serbia) - SQL Server performance troubleshootingTarabica 2019 (Belgrade, Serbia) - SQL Server performance troubleshooting
Tarabica 2019 (Belgrade, Serbia) - SQL Server performance troubleshootingJovan Popovic
 
Coherence sig-nfr-web-tier-scaling-using-coherence-web
Coherence sig-nfr-web-tier-scaling-using-coherence-webCoherence sig-nfr-web-tier-scaling-using-coherence-web
Coherence sig-nfr-web-tier-scaling-using-coherence-webC2B2 Consulting
 
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
 
Oracle UCM: Web Site Performance Tuning
Oracle UCM: Web Site Performance TuningOracle UCM: Web Site Performance Tuning
Oracle UCM: Web Site Performance TuningBrian Huff
 
SharePoint Microsoft IT - Swiss Presentation with Joel and Andre
SharePoint Microsoft IT - Swiss Presentation with Joel and AndreSharePoint Microsoft IT - Swiss Presentation with Joel and Andre
SharePoint Microsoft IT - Swiss Presentation with Joel and AndreJoel Oleson
 
Azure SQL Managed Instance - SqlBits 2019
Azure SQL Managed Instance - SqlBits 2019Azure SQL Managed Instance - SqlBits 2019
Azure SQL Managed Instance - SqlBits 2019Jovan Popovic
 
Infrastructure Best Practices for SharePoint On-Premises presented by Michael...
Infrastructure Best Practices for SharePoint On-Premises presented by Michael...Infrastructure Best Practices for SharePoint On-Premises presented by Michael...
Infrastructure Best Practices for SharePoint On-Premises presented by Michael...European SharePoint Conference
 
Kluczowe elementy infrastruktury...
Kluczowe elementy infrastruktury...Kluczowe elementy infrastruktury...
Kluczowe elementy infrastruktury...Alicja Sieminska
 
Silicon India Java Conference: Building Scalable Solutions For Commerce Silic...
Silicon India Java Conference: Building Scalable Solutions For Commerce Silic...Silicon India Java Conference: Building Scalable Solutions For Commerce Silic...
Silicon India Java Conference: Building Scalable Solutions For Commerce Silic...Kalaiselvan (Selvan)
 
VMworld 2013: Implementing a Holistic BC/DR Strategy with VMware - Part One
VMworld 2013: Implementing a Holistic BC/DR Strategy with VMware - Part OneVMworld 2013: Implementing a Holistic BC/DR Strategy with VMware - Part One
VMworld 2013: Implementing a Holistic BC/DR Strategy with VMware - Part OneVMworld
 
SQL Azure the database in the cloud
SQL Azure the database in the cloud SQL Azure the database in the cloud
SQL Azure the database in the cloud Eduardo Castro
 
4. (mjk) extreme performance 2
4. (mjk) extreme performance 24. (mjk) extreme performance 2
4. (mjk) extreme performance 2Doina Draganescu
 
SQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginners
SQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginnersSQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginners
SQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginnersTobias Koprowski
 
Introduction to Windows Azure and Windows Azure SQL Database
Introduction to Windows Azure and Windows Azure SQL DatabaseIntroduction to Windows Azure and Windows Azure SQL Database
Introduction to Windows Azure and Windows Azure SQL DatabaseVikas Sahni
 

What's hot (20)

WSI33 - Advanced Performance Tactics for IBM WebSphere Application Server
WSI33 - Advanced Performance Tactics for IBM WebSphere Application ServerWSI33 - Advanced Performance Tactics for IBM WebSphere Application Server
WSI33 - Advanced Performance Tactics for IBM WebSphere Application Server
 
Edge 2016 SCL-2484: a software defined scalable and flexible container manage...
Edge 2016 SCL-2484: a software defined scalable and flexible container manage...Edge 2016 SCL-2484: a software defined scalable and flexible container manage...
Edge 2016 SCL-2484: a software defined scalable and flexible container manage...
 
Enterprise Manager DBaaS
Enterprise Manager DBaaSEnterprise Manager DBaaS
Enterprise Manager DBaaS
 
SharePoint and Large Scale SQL Deployments - NZSPC
SharePoint and Large Scale SQL Deployments - NZSPCSharePoint and Large Scale SQL Deployments - NZSPC
SharePoint and Large Scale SQL Deployments - NZSPC
 
Tarabica 2019 (Belgrade, Serbia) - SQL Server performance troubleshooting
Tarabica 2019 (Belgrade, Serbia) - SQL Server performance troubleshootingTarabica 2019 (Belgrade, Serbia) - SQL Server performance troubleshooting
Tarabica 2019 (Belgrade, Serbia) - SQL Server performance troubleshooting
 
Coherence sig-nfr-web-tier-scaling-using-coherence-web
Coherence sig-nfr-web-tier-scaling-using-coherence-webCoherence sig-nfr-web-tier-scaling-using-coherence-web
Coherence sig-nfr-web-tier-scaling-using-coherence-web
 
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
 
Oracle UCM: Web Site Performance Tuning
Oracle UCM: Web Site Performance TuningOracle UCM: Web Site Performance Tuning
Oracle UCM: Web Site Performance Tuning
 
SharePoint Microsoft IT - Swiss Presentation with Joel and Andre
SharePoint Microsoft IT - Swiss Presentation with Joel and AndreSharePoint Microsoft IT - Swiss Presentation with Joel and Andre
SharePoint Microsoft IT - Swiss Presentation with Joel and Andre
 
Azure SQL Managed Instance - SqlBits 2019
Azure SQL Managed Instance - SqlBits 2019Azure SQL Managed Instance - SqlBits 2019
Azure SQL Managed Instance - SqlBits 2019
 
Centrifuge
CentrifugeCentrifuge
Centrifuge
 
Infrastructure Best Practices for SharePoint On-Premises presented by Michael...
Infrastructure Best Practices for SharePoint On-Premises presented by Michael...Infrastructure Best Practices for SharePoint On-Premises presented by Michael...
Infrastructure Best Practices for SharePoint On-Premises presented by Michael...
 
Kluczowe elementy infrastruktury...
Kluczowe elementy infrastruktury...Kluczowe elementy infrastruktury...
Kluczowe elementy infrastruktury...
 
Silicon India Java Conference: Building Scalable Solutions For Commerce Silic...
Silicon India Java Conference: Building Scalable Solutions For Commerce Silic...Silicon India Java Conference: Building Scalable Solutions For Commerce Silic...
Silicon India Java Conference: Building Scalable Solutions For Commerce Silic...
 
VMworld 2013: Implementing a Holistic BC/DR Strategy with VMware - Part One
VMworld 2013: Implementing a Holistic BC/DR Strategy with VMware - Part OneVMworld 2013: Implementing a Holistic BC/DR Strategy with VMware - Part One
VMworld 2013: Implementing a Holistic BC/DR Strategy with VMware - Part One
 
SQL Azure the database in the cloud
SQL Azure the database in the cloud SQL Azure the database in the cloud
SQL Azure the database in the cloud
 
4. (mjk) extreme performance 2
4. (mjk) extreme performance 24. (mjk) extreme performance 2
4. (mjk) extreme performance 2
 
SQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginners
SQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginnersSQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginners
SQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginners
 
Introduction to Windows Azure and Windows Azure SQL Database
Introduction to Windows Azure and Windows Azure SQL DatabaseIntroduction to Windows Azure and Windows Azure SQL Database
Introduction to Windows Azure and Windows Azure SQL Database
 
MCSA 70-412 Chapter 06
MCSA 70-412 Chapter 06MCSA 70-412 Chapter 06
MCSA 70-412 Chapter 06
 

Viewers also liked

Storage Server & Brach Cache
Storage Server & Brach CacheStorage Server & Brach Cache
Storage Server & Brach CacheAmit Gatenyo
 
Licencias utpl
Licencias utplLicencias utpl
Licencias utplUTPL
 
Licencias utpl
Licencias utplLicencias utpl
Licencias utplUTPL
 
KHODOR MOHAMAD MAHER RIMLAWI CV
KHODOR MOHAMAD MAHER RIMLAWI CVKHODOR MOHAMAD MAHER RIMLAWI CV
KHODOR MOHAMAD MAHER RIMLAWI CVkhodorramlawi
 
Tageos Corporate Presentation
Tageos Corporate PresentationTageos Corporate Presentation
Tageos Corporate PresentationTageos
 
Tageos Case Study Healthcare - Bassin de Thau Hospital
Tageos Case Study Healthcare - Bassin de Thau HospitalTageos Case Study Healthcare - Bassin de Thau Hospital
Tageos Case Study Healthcare - Bassin de Thau HospitalTageos
 
Presentation of Tageos Sustainability Benefits
Presentation of Tageos Sustainability BenefitsPresentation of Tageos Sustainability Benefits
Presentation of Tageos Sustainability BenefitsTageos
 
Tageos Corporate Presentation with Notes
Tageos Corporate Presentation with NotesTageos Corporate Presentation with Notes
Tageos Corporate Presentation with NotesTageos
 
Persamaan Laju Reaksi dan Orde Reaksi - Chemistry
Persamaan Laju Reaksi dan Orde Reaksi - ChemistryPersamaan Laju Reaksi dan Orde Reaksi - Chemistry
Persamaan Laju Reaksi dan Orde Reaksi - ChemistryChika Vithya
 
From Strategy to User Experience - Meeting Design Is Everything
From Strategy to User Experience - Meeting Design Is EverythingFrom Strategy to User Experience - Meeting Design Is Everything
From Strategy to User Experience - Meeting Design Is EverythingSocial Tables
 
Elasticsearch Query DSL - Not just for wizards...
Elasticsearch Query DSL - Not just for wizards...Elasticsearch Query DSL - Not just for wizards...
Elasticsearch Query DSL - Not just for wizards...clintongormley
 
Down and dirty with Elasticsearch
Down and dirty with ElasticsearchDown and dirty with Elasticsearch
Down and dirty with Elasticsearchclintongormley
 
Elasticsearch in Netflix
Elasticsearch in NetflixElasticsearch in Netflix
Elasticsearch in NetflixDanny Yuan
 
Elasticsearch 5 in Amazon Elasticsearch Service
Elasticsearch 5 in Amazon Elasticsearch ServiceElasticsearch 5 in Amazon Elasticsearch Service
Elasticsearch 5 in Amazon Elasticsearch ServiceAmazon Web Services
 
Battle of the giants: Apache Solr vs ElasticSearch
Battle of the giants: Apache Solr vs ElasticSearchBattle of the giants: Apache Solr vs ElasticSearch
Battle of the giants: Apache Solr vs ElasticSearchRafał Kuć
 
Attack monitoring using ElasticSearch Logstash and Kibana
Attack monitoring using ElasticSearch Logstash and KibanaAttack monitoring using ElasticSearch Logstash and Kibana
Attack monitoring using ElasticSearch Logstash and KibanaPrajal Kulkarni
 
Solr vs. Elasticsearch - Case by Case
Solr vs. Elasticsearch - Case by CaseSolr vs. Elasticsearch - Case by Case
Solr vs. Elasticsearch - Case by CaseAlexandre Rafalovitch
 

Viewers also liked (20)

Storage Server & Brach Cache
Storage Server & Brach CacheStorage Server & Brach Cache
Storage Server & Brach Cache
 
Licencias utpl
Licencias utplLicencias utpl
Licencias utpl
 
Licencias utpl
Licencias utplLicencias utpl
Licencias utpl
 
KHODOR MOHAMAD MAHER RIMLAWI CV
KHODOR MOHAMAD MAHER RIMLAWI CVKHODOR MOHAMAD MAHER RIMLAWI CV
KHODOR MOHAMAD MAHER RIMLAWI CV
 
25446
2544625446
25446
 
Tageos Corporate Presentation
Tageos Corporate PresentationTageos Corporate Presentation
Tageos Corporate Presentation
 
Tageos Case Study Healthcare - Bassin de Thau Hospital
Tageos Case Study Healthcare - Bassin de Thau HospitalTageos Case Study Healthcare - Bassin de Thau Hospital
Tageos Case Study Healthcare - Bassin de Thau Hospital
 
Presentation of Tageos Sustainability Benefits
Presentation of Tageos Sustainability BenefitsPresentation of Tageos Sustainability Benefits
Presentation of Tageos Sustainability Benefits
 
Tageos Corporate Presentation with Notes
Tageos Corporate Presentation with NotesTageos Corporate Presentation with Notes
Tageos Corporate Presentation with Notes
 
Distribucion normal
Distribucion normalDistribucion normal
Distribucion normal
 
DNA GLOBAL, GURUN
DNA GLOBAL, GURUNDNA GLOBAL, GURUN
DNA GLOBAL, GURUN
 
Persamaan Laju Reaksi dan Orde Reaksi - Chemistry
Persamaan Laju Reaksi dan Orde Reaksi - ChemistryPersamaan Laju Reaksi dan Orde Reaksi - Chemistry
Persamaan Laju Reaksi dan Orde Reaksi - Chemistry
 
From Strategy to User Experience - Meeting Design Is Everything
From Strategy to User Experience - Meeting Design Is EverythingFrom Strategy to User Experience - Meeting Design Is Everything
From Strategy to User Experience - Meeting Design Is Everything
 
Elasticsearch Query DSL - Not just for wizards...
Elasticsearch Query DSL - Not just for wizards...Elasticsearch Query DSL - Not just for wizards...
Elasticsearch Query DSL - Not just for wizards...
 
Down and dirty with Elasticsearch
Down and dirty with ElasticsearchDown and dirty with Elasticsearch
Down and dirty with Elasticsearch
 
Elasticsearch in Netflix
Elasticsearch in NetflixElasticsearch in Netflix
Elasticsearch in Netflix
 
Elasticsearch 5 in Amazon Elasticsearch Service
Elasticsearch 5 in Amazon Elasticsearch ServiceElasticsearch 5 in Amazon Elasticsearch Service
Elasticsearch 5 in Amazon Elasticsearch Service
 
Battle of the giants: Apache Solr vs ElasticSearch
Battle of the giants: Apache Solr vs ElasticSearchBattle of the giants: Apache Solr vs ElasticSearch
Battle of the giants: Apache Solr vs ElasticSearch
 
Attack monitoring using ElasticSearch Logstash and Kibana
Attack monitoring using ElasticSearch Logstash and KibanaAttack monitoring using ElasticSearch Logstash and Kibana
Attack monitoring using ElasticSearch Logstash and Kibana
 
Solr vs. Elasticsearch - Case by Case
Solr vs. Elasticsearch - Case by CaseSolr vs. Elasticsearch - Case by Case
Solr vs. Elasticsearch - Case by Case
 

Similar to Windows Server AppFabric Cache

Scalable Resilient Web Services In .Net
Scalable Resilient Web Services In .NetScalable Resilient Web Services In .Net
Scalable Resilient Web Services In .NetBala Subra
 
VMware PEX Boot Camp - The Future Now: NetApp Clustered Storage and Flash for...
VMware PEX Boot Camp - The Future Now: NetApp Clustered Storage and Flash for...VMware PEX Boot Camp - The Future Now: NetApp Clustered Storage and Flash for...
VMware PEX Boot Camp - The Future Now: NetApp Clustered Storage and Flash for...NetApp
 
Building High Performance and Scalable Applications Using AppFabric Cache- Im...
Building High Performance and Scalable Applications Using AppFabric Cache- Im...Building High Performance and Scalable Applications Using AppFabric Cache- Im...
Building High Performance and Scalable Applications Using AppFabric Cache- Im...Impetus Technologies
 
Simple server side cache for Express.js with Node.js
Simple server side cache for Express.js with Node.jsSimple server side cache for Express.js with Node.js
Simple server side cache for Express.js with Node.jsGokusen Newz
 
AWS Summit 2011: Architecting in the cloud
AWS Summit 2011: Architecting in the cloudAWS Summit 2011: Architecting in the cloud
AWS Summit 2011: Architecting in the cloudAmazon Web Services
 
Using Distributed In-Memory Computing for Fast Data Analysis
Using Distributed In-Memory Computing for Fast Data AnalysisUsing Distributed In-Memory Computing for Fast Data Analysis
Using Distributed In-Memory Computing for Fast Data AnalysisScaleOut Software
 
Scale Your Data Tier with Windows Server AppFabric
Scale Your Data Tier with Windows Server AppFabricScale Your Data Tier with Windows Server AppFabric
Scale Your Data Tier with Windows Server AppFabricWim Van den Broeck
 
vFabric - Ideal Platform for SaaS Apps
vFabric - Ideal Platform for SaaS AppsvFabric - Ideal Platform for SaaS Apps
vFabric - Ideal Platform for SaaS AppsVMware vFabric
 
Top 6 Reasons to Use a Distributed Data Grid
Top 6 Reasons to Use a Distributed Data GridTop 6 Reasons to Use a Distributed Data Grid
Top 6 Reasons to Use a Distributed Data GridScaleOut Software
 
J2EE Batch Processing
J2EE Batch ProcessingJ2EE Batch Processing
J2EE Batch ProcessingChris Adkin
 
Focus on your app with Amazon RDS
Focus on your app with Amazon RDSFocus on your app with Amazon RDS
Focus on your app with Amazon RDSAmazon Web Services
 
Application Scalability in Server Farms - NCache
Application Scalability in Server Farms - NCacheApplication Scalability in Server Farms - NCache
Application Scalability in Server Farms - NCacheAlachisoft
 
Oracle 10g rac_overview
Oracle 10g rac_overviewOracle 10g rac_overview
Oracle 10g rac_overviewRobel Parvini
 
Caching objects-in-memory
Caching objects-in-memoryCaching objects-in-memory
Caching objects-in-memoryMauro Cassani
 
Understanding Web Cache
Understanding Web CacheUnderstanding Web Cache
Understanding Web CacheProdigyView
 
Share point 2013 distributed cache
Share point 2013 distributed cacheShare point 2013 distributed cache
Share point 2013 distributed cacheMichael Nokhamzon
 
Research_Presentation
Research_PresentationResearch_Presentation
Research_PresentationKanwar Gill
 
Spring 3.1: a Walking Tour
Spring 3.1: a Walking TourSpring 3.1: a Walking Tour
Spring 3.1: a Walking TourJoshua Long
 
Aptare Introduction Presentation April 2012
Aptare Introduction Presentation April 2012Aptare Introduction Presentation April 2012
Aptare Introduction Presentation April 2012nigelhoughton17
 

Similar to Windows Server AppFabric Cache (20)

Scalable Resilient Web Services In .Net
Scalable Resilient Web Services In .NetScalable Resilient Web Services In .Net
Scalable Resilient Web Services In .Net
 
VMware PEX Boot Camp - The Future Now: NetApp Clustered Storage and Flash for...
VMware PEX Boot Camp - The Future Now: NetApp Clustered Storage and Flash for...VMware PEX Boot Camp - The Future Now: NetApp Clustered Storage and Flash for...
VMware PEX Boot Camp - The Future Now: NetApp Clustered Storage and Flash for...
 
Building High Performance and Scalable Applications Using AppFabric Cache- Im...
Building High Performance and Scalable Applications Using AppFabric Cache- Im...Building High Performance and Scalable Applications Using AppFabric Cache- Im...
Building High Performance and Scalable Applications Using AppFabric Cache- Im...
 
Simple server side cache for Express.js with Node.js
Simple server side cache for Express.js with Node.jsSimple server side cache for Express.js with Node.js
Simple server side cache for Express.js with Node.js
 
AWS Summit 2011: Architecting in the cloud
AWS Summit 2011: Architecting in the cloudAWS Summit 2011: Architecting in the cloud
AWS Summit 2011: Architecting in the cloud
 
Using Distributed In-Memory Computing for Fast Data Analysis
Using Distributed In-Memory Computing for Fast Data AnalysisUsing Distributed In-Memory Computing for Fast Data Analysis
Using Distributed In-Memory Computing for Fast Data Analysis
 
Scale Your Data Tier with Windows Server AppFabric
Scale Your Data Tier with Windows Server AppFabricScale Your Data Tier with Windows Server AppFabric
Scale Your Data Tier with Windows Server AppFabric
 
vFabric - Ideal Platform for SaaS Apps
vFabric - Ideal Platform for SaaS AppsvFabric - Ideal Platform for SaaS Apps
vFabric - Ideal Platform for SaaS Apps
 
Top 6 Reasons to Use a Distributed Data Grid
Top 6 Reasons to Use a Distributed Data GridTop 6 Reasons to Use a Distributed Data Grid
Top 6 Reasons to Use a Distributed Data Grid
 
J2EE Batch Processing
J2EE Batch ProcessingJ2EE Batch Processing
J2EE Batch Processing
 
Focus on your app with Amazon RDS
Focus on your app with Amazon RDSFocus on your app with Amazon RDS
Focus on your app with Amazon RDS
 
Application Scalability in Server Farms - NCache
Application Scalability in Server Farms - NCacheApplication Scalability in Server Farms - NCache
Application Scalability in Server Farms - NCache
 
Oracle 10g rac_overview
Oracle 10g rac_overviewOracle 10g rac_overview
Oracle 10g rac_overview
 
Caching objects-in-memory
Caching objects-in-memoryCaching objects-in-memory
Caching objects-in-memory
 
Understanding Web Cache
Understanding Web CacheUnderstanding Web Cache
Understanding Web Cache
 
Managing the cloud
Managing the cloudManaging the cloud
Managing the cloud
 
Share point 2013 distributed cache
Share point 2013 distributed cacheShare point 2013 distributed cache
Share point 2013 distributed cache
 
Research_Presentation
Research_PresentationResearch_Presentation
Research_Presentation
 
Spring 3.1: a Walking Tour
Spring 3.1: a Walking TourSpring 3.1: a Walking Tour
Spring 3.1: a Walking Tour
 
Aptare Introduction Presentation April 2012
Aptare Introduction Presentation April 2012Aptare Introduction Presentation April 2012
Aptare Introduction Presentation April 2012
 

Windows Server AppFabric Cache

  • 1. Windows Server AppFabric Cache Pradeep S pradeep.s@neudesic.com
  • 2. Objective  Caching Mechanism and Problems  Caching using Windows Server AppFabric Cache  Windows Server AppFabric Cache Overview  Design Considerations for Cache Implementation  Case Study
  • 3. Caching Mechanism and Problems Long load time & Users see different Speeds up the delays Load Balancer data, depending on the application server they get routed to! Cache Cache Reduces database load High load on the V1 V2 database Update 3
  • 4. Solution: Distributed Caching Using AppFabric Cache Load Balancer Unified Cache View Cache Invalidated New version of data placed in cache V1 V2 Update 4
  • 5. AppFabric Cache Physical Architecture Cache Cluster Cache Cache Cache Host Host Host Cache-enabled Application Server Cache Server Cache Server Cache Server
  • 7. AppFabric Cache Advantages  Rich API  Can be NET 4.5 or .NET 4.0 or .NET 3.5 SP1  Can be configured in code or config  Read-Through/Write-Behind Pattern  Scalable  Can be Scaled out  Performance  Typically linear as more nodes are added  LocalCache increases raw performance  High Availability  Provides cache data-protection by saving 2 copies of cached data on different nodes  Safeguards against cache node failures  Management  Security
  • 8. Management  Caches and Cache Cluster are provisioned and managed through Windows PowerShell  ETW Tracing and Logging Available on both Client and Server  Rich set of performance monitor counters
  • 9. Security  Domain  Authentication in AD, Authorisation in AppFabric  Only authorised servers join clusters  Only authorised clients connect to clusters  Workgroup  Authentication in network share, Authorisation in AppFabric  Transport Level Security  Signing and Encryption
  • 10. Design Considerations for Caching  Data Categorization  Object Removal  Cache-Source Coherency  Programming Patterns  Administration  Security  Availability
  • 11. Data Categorization  Reference Data  “Read-Heavy”, Shared between users (concurrent access)  Examples: Product description, customer profile data  Resource Data  Read-Write, Shared between users (concurrent access)  Examples: Number of units in stock, online survey results  Activity Data  Read-Write, User specific (no concurrent access)  Examples: Shopping cart content, survey response 1 1
  • 12. Object Removal  Explicit Deletion  User explicitly removes an item from the cache  Expiration  When an object is proactively removed from the cache because of staleness  Eviction  When an object is reactively removed from the cache due to low memory conditions
  • 13. Cache-Source Coherency  Pre-load data into Cache  Example: Loading products catalog details into cache using bootstrap process when application starts  Maintain Cache-Source coherency every time source is updated
  • 14. Programming Patterns  Cache-aside Pattern  Explicitly write code to check if data exists in cache, if not, read from database and place a copy in cache  Read-through and Write-behind  Read: If data not found in cache, read through a specialized provider  Write: Cache stores the data in memory and writes the data to permanent storage using specialized provider
  • 15. Case Study: Dealer Management Software Problem  SaaS based Dealer Management Software from industry leading provider had to share the data between many of its sub-applications in-order to complete the business process flow. Each application would query the same data and act upon. Some of the data comes from legacy Crm application and access times were considerable and this led to slowing down performance of the software.
  • 16. Case Study: Dealer Management Software Solution  ASP.Net Session Provider was built and used across applications to share data. Enrollment Financial Mgmt. App Fulfillment Session provider used AppFabric Cache App App as a primary persistent storage and SQL Server as secondary storage. This reduced repeated access for same data across applications and load on ASP.Net Session Provider Crm system.  Reference (“Read Heavy”) data was Cache Cluster loaded into cache using a bootstrap process. This reduced data load times for certain data at first request.  Central administration of cache through Primary Cache Host PowerShell Scripts Cache Host  Resulted in significant performance boost