> my client is so thrilled
I’m glad to hear that! Now might be a good time to raise your development rates
> the Jira ticket mentions locking
The locking was implemented inside the getOrSet() method. You can open up the CacheBoxProvider.cfc to see the code. Basically, if you look for an item in the cache and it exists ,no locks are obtained which keeps things running fast. However, if a call to getOrSet() needs to stop and create the item in cache, an exclusive lock is obtained to ensure that only the first thread to reach the code performs the operation. You don’t need to do any locking yourself as it’s all taken care of inside the provider.
> is there any need to upgrade to 2.0
I don’t think so. The only change was removing the XML config support. Here is the “What’s New” guide for CacheBox 2.0.
http://wiki.coldbox.org/wiki/WhatsNew:CacheBox-2.0.0.cfm
> We want to get a couchbase server set up to do distributed cache
That’s great. If you choose to go with the Enterprise version of Couchbase, please contact Ortus as we are working to become a reseller. Also, I assume you’ve seen our blog entry on setting up Couchbase: http://www.ortussolutions.com/blog/couchbase-cachebox-integration
> AWS? Or running your own server?
For best performance, I’d recommend having your Couchbase cluster on the same network as your web servers. While you can certainly host it elsewhere, the network latencies might be slower than the content you’re caching. Network-wise you want there to be as few hops as possible, even if that means hosting the cluster behind your load balancer so it’s on the same switch.
Of course the availability of this network is important, but I assume whatever it is, it’s good enough for you to run your web servers on it already and it doesn’t do any good if your web servers are down, but your Couchbase cluster is still up on AWS. So I’d say keep them together, wherever that is.
> not really sure how to figure out what instance etc. to use
here is a nice blog that is part of a series on how to size a cluster as well as what RAM and CPU requirements to allow for.
http://blog.couchbase.com/how-many-nodes-part-3-hardware-considerations
Thanks!
~Brad
ColdBox Platform Evangelist
Ortus Solutions, Corp
E-mail: brad@coldbox.org
ColdBox Platform: http://www.coldbox.org
Blog: http://www.codersrevolution.com