1

We are looking for a cache layer between IIS/ISAPI and Coldfusion, so that if an entire page is cached on the server, then additional requests to that resource do not require allocating a Coldfusion thread. I think this is almost identical to nginx + memcached but unfortunately we do not have the luxury of using those =(.

Here is an example of the communication pathways that I envision:

GET request for /hotels/?listingid=5 -> cache -> exists and fresh -> serve

GET request for /hotels/?listingid=10 -> cache -> exists but stale -> Coldfusion -> cache -> serve

GET request to cache from coldfusion to clear out /hotels/?listingid=10.

GET request for /hotels/?listingid=10&nocache -> Coldfusion

I don't mind rolling my own even if I had to code some C++, but I don't even know where to start.

2
  • I've great success with CacheBox. You can also do some work with caching directly in ColdFusion via the <cfcache /> tag. There are lots of improvements in CF9 and CF10. If you're on those later versions, you also have access to Ehcache.
    – Dan Short
    Sep 18, 2012 at 19:05
  • The cfcache, cachePut() and cacheGet() functions work great. But even if we cache an entire page with cfcache it still requires a coldfusion thread to serve that page. We want to be able to serve cached content without the thread.
    – Owen Allen
    Sep 18, 2012 at 22:25

1 Answer 1

0

As soon as you have a query string in your URL, that means the content is dynamically generated. Some program, in this case ColdFusion evaluates the query string to figure out what to do with it. I would stress test the <cfcache> based solution to see if you are experiencing latency. When I get a high traffic website I focus on the following areas:

  • Is the db keeping up with the request load
  • Are the db resources being used efficiently
  • Load balancing / failover / standby servers
  • Can I get more memory for the web servers
  • How are the CF server logs doing

Every situation is different, but the speed of page request thread generation has just never come up

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .