Caching for Performance - PowerPoint PPT Presentation

About This Presentation
Title:

Caching for Performance

Description:

Caching for Performance Jeff Tapper Tapper.net Consulting Agenda What is Caching Why is Caching important Where can I implement caching What to Cache within CFMX How ... – PowerPoint PPT presentation

Number of Views:75
Avg rating:3.0/5.0
Slides: 22
Provided by: JeffT159
Category:

less

Transcript and Presenter's Notes

Title: Caching for Performance


1
Caching for Performance
  • Jeff Tapper
  • Tapper.net Consulting

2
Agenda
  • What is Caching
  • Why is Caching important
  • Where can I implement caching
  • What to Cache within CFMX
  • How to Cache within CFMX
  • Summary

3
What is Caching
  • A Cache is a place where something is temporarily
    stored
  • By storing frequently used items, the need to
    recreate them is mitigated

4
Why is Caching Important
  • Each operation a server performs takes time /
    resources
  • By reducing the number of operations any server
    performs, we increase the ability for that server
    to handle more requests
  • Faster Page Loads
  • Increased Scalability

5
Places to Cache
  • Database
  • ColdFusion
  • Web Server
  • Network

6
Places to Cache
  • Network Diagram

7
What to Cache in CFMX
  • Data
  • CFC instances
  • Webservices
  • Pages
  • Content

8
What to Cache in CFMX
  • Data
  • Caching common queries can greatly increase speed
    pages are built
  • Reduces network traffic between CFMX and Database

9
What to Cache in CFMX
  • CFCs
  • CFCs are the new core building block of CFMX
    applications
  • Instantiation of CFCs is an expensive (slow)
    process

10
What to Cache in CFMX
  • Webservices
  • Calling a webservice invokes a complex process.
  • Requests WSDL, parses it, makes calls to methods
  • Caching WSDL reduces over all processing time 3-5x

11
What to Cache in CFMX
  • Pages
  • Many applications have entire pages which do not
    change frequently
  • Caching the entire page can reduce time needed by
    CFMX
  • In some cases, pages can be cached as HTML,
    removing the need for CFMX to process it at all

12
What to Cache in CFMX
  • Content
  • Often, even in pages which are not static, many
    sections of the page are.
  • Caching the static parts of the page reduces the
    time CFMX needs to build the page.

13
Data Caching in CFMX
  • Cached Within
  • Cached After
  • Storing query in shared scope variables

14
Data Caching in CFMX
Using CFQUERY attributes to Cache
  • Benefits
  • Great for dynamic queries
  • Easy to implement
  • Built in Timeout
  • Drawbacks
  • Purging non-trivial

15
Data Caching in CFMX
Query Caching in a shared scope
  • Drawbacks
  • Not well suited for dynamic queries
  • More Complex implementation
  • Lacks built-in timeout
  • Benefits
  • Easy to Manage
  • Not limited by Max Number cached queries

16
CFC Caching in CFMX
  • Storing instances in shared scope variables
  • Page Context Bug

17
Webservice Caching in CFMX
  • CFMX automatically caches WSDL

18
Page Caching in CFMX
  • Trusted Cache
  • CF_SuperCache
  • Custom Built Solutions

19
Caching content in CFMX
  • CFCACHE
  • CFSAVECONTENT

20
Summary
  • Effective use of caching can greatly extend the
    scalability of an application
  • Every application offers a myriad of caching
    possibilities
  • Caching opportunities exist both within and
    outside the CFMX server

21
Questions
  • ?
Write a Comment
User Comments (0)
About PowerShow.com