Caching for performance
Sponsored Links
This presentation is the property of its rightful owner.
1 / 21

Caching for Performance PowerPoint PPT Presentation


  • 109 Views
  • Uploaded on
  • Presentation posted in: General

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 to Cache within CFMX Summary. What is Caching. A Cache is a place where something is temporarily stored

Download Presentation

Caching for Performance

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


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 to Cache within CFMX

  • Summary


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


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


Places to Cache

  • Database

  • ColdFusion

  • Web Server

  • Network


Places to Cache

  • Network Diagram


What to Cache in CFMX

  • Data

  • CFC instances

  • Webservices

  • Pages

  • Content


What to Cache in CFMX

Data

  • Caching common queries can greatly increase speed pages are built

  • Reduces network traffic between CFMX and Database


What to Cache in CFMX

CFCs

  • CFCs are the new core building block of CFMX applications

  • Instantiation of CFCs is an expensive (slow) process


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


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


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.


Data Caching in CFMX

  • Cached Within

  • Cached After

  • Storing query in shared scope variables


Benefits

Great for dynamic queries

Easy to implement

Built in Timeout

Drawbacks

Purging non-trivial

Data Caching in CFMX

Using CFQUERY attributes to Cache


Benefits

Easy to Manage

Not limited by “Max Number cached queries”

Drawbacks

Not well suited for dynamic queries

More Complex implementation

Lacks built-in timeout

Data Caching in CFMX

Query Caching in a shared scope


CFC Caching in CFMX

  • Storing instances in shared scope variables

  • Page Context Bug


Webservice Caching in CFMX

  • CFMX automatically caches WSDL


Page Caching in CFMX

  • Trusted Cache

  • CF_SuperCache

  • Custom Built Solutions


Caching content in CFMX

  • CFCACHE

  • CFSAVECONTENT


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


Questions

?


  • Login