I've been meaning to checkout CacheBox for a while, but finally got
around to it late last week.
I was able to replace the caching framework we had in place, with an
implementation of CacheBox. It was pretty straightforward (and easy)
to switch over to CacheBox.
Anyways, our old framework had the idea of caching things in the
request scope.
I spent some time today trying to familiarize myself with the CacheBox
code, and seeing if I could get a "request scope context / storage
type" added to it.
I was wondering if anyone had the time to check out the patch I made.
I added a simple test script to a new folder called /cachebox/samples/
RequestContext/
I uploaded the patch to the files section: http://groups.google.com/group/cfcachebox/files
It can be applied to the trunk of revision 170 (from the RIAForge
repository: http://svn.riaforge.org/cachebox)
Anyways, I'm wondering if this is safe to do or not. I haven't tested
from anywhere except the simple test page I made. I'm wondering if I
will run into concurrency issues, or problems when dealing with named
applications, etc.
If we end up using CacheBox, we'll still need a "request cache" of
some sort. I'm just debating on whether or not to use our current
implementation, or see if this CacheBox version I modified will be
safe/reliable...
Thanks for any help you can provide!
-Jeff
Hey Jeff, sorry I didn't respond last night.
I know it's possible to clear an entire cache agent at once. I think the
same is true of an application and maybe even server or cluster.
I hadn't responded to the previous message though because I didn't have
a chance yet to look at the patch.
My larger concern would be that content in the request context is likely
to be functionally rather different than for other contexts. It gets
thrown away at the end of each request and then has to be recreated on
subsequent requests, which means that the metadata tracking hits and
misses for each cache item would be rather different than for all the
other cache contexts. Currently that would make the metadata innaccurate,
which could cause issues with how the cache is later reaped based on
that metadata. But I wanted to have a look at the code before I
commented on it.
Anyway, very glad to hear that it's been easy to implement for you. :)
Thanks,
--
s. isaac dealey :: AutLabs
Creating meaningful employment for people with Autism
http://www.autlabs.com
ph: 817.385.0301
http://onTap.riaforge.org/blog