If there is one thing you should be doing if you you use WebSphere Commerce then it is running a cache policy. If you don’t you are making your site work much harder than need be, and you are making it respond much more slowly for your users. It is the one aspect that gets forgotton lots of focus on functionality, the design of the site oh and then maybe performance. Get cache going in the right way and it will really help, although it does need to be part of your design process than an after thought.
However even cache can have its issues especially once you start to cluster the WebSphere servers. Multiple copies of the same item will existing across the nodes, so say youcache fragment for a product page would exist in each node inside your WebSphere cluster. The fact that everything the Commerce environment and cache must exist in a single JVM on the node, this means you are limited by the memory available. Given most people will be running a 32bit JVM that is really not very much. Once that memory is used then you get into disk caches and on a busy site you can get a big overhead for your disk offload cache.
Well now there is an option available that can help remove these issues, and it can also be implemented with no extra coding required in the Dynacache environment. This is IBM’s WebSphere Extreme Scale offering allowing you to move the cache from within the same JVM as Commerce plus keeping everything in memory for better performance. It also can work away from the machines (virtual or physical running commerce) so can be implemented on cheaper commodity hardware. It works by utilising multiple JVM’s, which scale in a linear fashion and keeping track of where an object is held across those JVM’s. So rather than each JVM keeping a copy of your page fragment for a product it is held once in a single JVM. The WXS environment then keeps track of where the objects are for serving up when requests are made. Also by only having a single copy of an object an invalidation of an object does not put load on each cache, the object is removed once and rebuilt once rather than multiple times. When you also come along and turn on a new JVM then it also becomes active straight away but it does not have to build and prime a whole load of cache items.
A couple of other points worth noting if you are on WebSphere Commerce V6 and on WAS 6.0.X, then you will need to upgrade to WAS 6.1.0.25 to run your Commerce environment with Extreme Scale. It does support WebSPhere Commerce V7 straight away so no problem there. Also it is possible to use application servers such as Tomcat to provide your JVM’s so no additional WebSphere license costs. Although WXS does have features such as plugging into the Performance tools in WebSphere, which can give your more integration if required.