The short overview of cache providers continues with two more of them – NCache and Velocity.
NCache
As a surprise – it doesn't come free! So our (my) expectations should be even higher. But hey – it has a free option as well! So – what we get from NCache?
- Enterprise Library pluggability – this can be useful, but doesn't seem to be unachievable using the other providers as well…
- HttpModule for 1.1, Session handling module for 2.0/3.0/3.5 for putting asp.net session into cache
- Can handle java and .net clients natively
- You have the option to build complex hiearchies, clusters, etc
So – this looks like heaven, or not? The trick lies in the limitations for the free version:
- Only a maximum of 2 servers supported
- Cache clients should be either local or from the second cache server
- Only the replicated cache topology can be used
- No support for session state/output cache (means no module)
- 32-bit only (which would mean a 2 Gig cap on cache size, but it's limited as of 500 Mb anyway…)
- No java clients, no remote .net clients
- No SQL dependency
- No event notifications (!)
- No GUI tool
- …
So most of the limitations are rock solid and stops me from using this, sorry…
Microsoft Velocity
Microsoft Velocity is anotherdistributed cache platform for in-memory caches spread across multiple computers. The Velocity API is in managed code, and as usual – any serializable managed object can be in the cache. So let's look at the bells and whistles and the downsides:
- It's running as a 32bit process – in order to use more than 2Gigs you have to run more of them
- It has session state provider module for asp.net
- It supports regions as another level of separation as well as asynch communication, locking and TTL
- Planned support for failover, replicated cache (currently only local/partitioned/routed available) and eventing
So if it's at least as good as the others why not using it today? I have to admit – I'd miss many of the planned features… And as it looks like currently, CTP2 is on the way to be delivered at PDC, and RTM is targeted to be in H1CY09…
Of course – this is not a full list. If you know any cache provider you think may worth showing here – don't hesitate. And I'll try to come to a conclusion in the part 3 – so be prepared!