Microsoft Velocity : Q&A

Tags: .NET, ASP.NET, C#, Cache, Caching, Velocity

 

I have been working my way through the CTP2 bits of Microsoft's new Distributed Caching Architecture called Velocity and found myself still wondering about a few items.  At the recent ASPInsiders and Microsoft MVP Conference I had the chance to meet a few people on the team and get their contact information so I decided to drop them a line.  The following is a short Q&A session that ensued.

 

Release Schedule:

Q: Will we be seeing CTP3 at Mix09?
A: We are, but then we decided to delay by 2 weeks to take in the .Net API recommendations. Our APIs are going to change slightly (e.g. class names have to be prefixed with "Cache" and we are moving the Region parameter to the end to allow overloading). We want to take this in now as opposed to later since that would mean Changing API at RTM time.


Q:
During the MVP Summit you (or someone) mentioned "Late 2009" for the V1. release.  Will there be a GoLive! date prior?  Any chance you can get more specific on the date?
A: Middle of 2009. (some NDA details removed)

 

API Specific:

Q: I really like the way in which you break down the data type access patterns (Reference, Activity, Resource).  I wonder if we could leverage that in the Caching Engine itself?  I can see specifying an enum on CacheCreate/CacheLoad which would return a specific (and optimized) cache specific to the type of data.  For example do we care about locking on Reference data?
A: That is interesting thought - will think about this more.

Q:  Generics!  We are using Object for the Value (add/put/get/etc..) why not use Generic functions?
A:  Yes post V1 :) Particularly once we want to support Linq Queries on the cache, we need typing.. So definitely in the works.. Also, this can help using the DataContract Serializer which is faster than the NetDataContractSerializer..

Response Q: Generics.  Post v1 - that's actually very disappointing!  I had really hoped that it would be for release.  I wonder if there is anything I'm missing?  Is there a longer process (greater review) when using generics - internally?  Or is it just a matter of dev time to do the work? Compatibility reasons...? 
Response A: Test work really..

 

Overall:

Q: Will there forever be a dependency on PowerShell for installation?  What about nodes where you would NOT want to admin the cluster, and just deploy the cache runtime...?
A: We don't depend on PowerShell for installation, just for monitoring and start/stop etc. You have a good ask that why should. We bother installing PowerShell on all the nodes. We haven't really thought about this issue. I will have a chat with folks about this.


Q:
Remote/Automatic deployment is an interesting scenario.
A: Yes - it is there in CTP3


Q:
I have found little documentation regarding using the cache in embedded scenarios.  Anything planned for CTP3?
A: Nope - embedded is not in plan for V1 right now. The only closest thing is the local cache.

Q: During some of your presentations you mention a pretty key number (was it 2k or 20k?) for the data value size.  Any chance you can shed some light on it?  Why is it so important?  Does it impact performance?
A: Nothing - just we ran numbers with different sizes 2k, 4k, 20k to see the effects. What we are seeing is that 6k is the breakeven point where we start getting throttled by the network more than the CPU. Below 6k, we get throttled by the CPU.

Q: Can you confirm:  That when using a LocalCache the object is not actually serialized?  Is it actually pushed over to a separate service in these cases?  For example IIS, with LocalCache for Session info. Do the objects themselves live as objects or as serialized data?
A: The object is just kept in the local cache, but also copied over to the service. You cannot have a local cache without a Cache service tier.

Q: Is it safe to assume that you are using XML Serialization in all cases?
A: Yes - binary

 

I had to perform some minor NDA screening to get this out the door but I hope to have more details in the near future.

3 Comments

  • Patrick said

    Is there any new on the Release of Velocity_V1? We are ready to implement with the CTP3, but there are a couple of issues(mainly with the failover cluster) that we are waiting to see if are corrected in the next release.

  • kiran said

    Hello, It's been written all over places that velocity will be released by November end; What is the v1 release date for velocity. The CTP3 of the velocity works on .Net 3.5 SP1 will the future release work on .Net 3.5 SP1 or need to have .net 4.0

Comments have been disabled for this content.