> > CacheBox is a hot-swappable caching framework for ColdFusion 
> 
> So, I've been wondering-- what exactly qualifies code as
> "hot-swappable"?  Does that mean that you can actually change it out for
> another framework while your app is running, or are you simply implying
> that it is stand-alone code that is portable?  

Thanks for the question, Brad. :)

If by framework you mean something like ehCache versus memcached, then
yes. It's always CacheBox that's ultimately managing everything, but you
can change the storage engine and eviction policies of different cache
stores while the app is running. So for example, you've got several
different cache stores, some of them are in-memory, some are using
ehCache, some are using memcached. You can selectively swap any single
store (I've been calling them "agents") to a different storage engine at
any given time, so you could say move the storage of one particular set
of content from a database to memcached or vice versa at run-time
without any problems. 

Or you could change the eviction policy of an agent from 10-minutes idle
to 100 items first-in-first-out or something else. 

Most (although I'm not sure it's all) of the previous options for CF
didn't allow you to make changes to the cache configuration at run-time,
they depend upon the cache config occurring just once at startup. 

There are a couple of advantages to being able to swap things at
run-time, one of them being that the service can automate changes to the
eviction policies so that the cache can optimize itself in a hands-free,
hassle-free way. So basically, it's cache that configures itself so that
you don't have to -- and it can do a better, more efficient job of
configurating itself than most of us will when we hand-code it. 

I know for myself when I'm thinking about configuring something in cache,
I'm really guessing about the usage patterns of my data. I don't have
actual usage graphs or anything to show me how long the average piece of
content stays in active use, etc. But the service will have direct
access to that kind of data, so it can make those decisions more
accurately at run-time than I will during development. :)

There are also stand-alone / portable implications as well, but those
aren't my reasons for describing it as "hot swappable". 

Anyway, great question. Hope to see you at the preso tomorrow. :) 

-- 
s. isaac dealey :: AutLabs 
Creating meaningful employment for people with Autism 
http://www.autlabs.com 
ph: 817.385.0301

http://onTap.riaforge.org/blog



~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Want to reach the ColdFusion community with something they want? Let them know 
on the House of Fusion mailing lists
Archive: 
http://www.houseoffusion.com/groups/cf-talk/message.cfm/messageid:327486
Subscription: http://www.houseoffusion.com/groups/cf-talk/subscribe.cfm
Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4

Reply via email to