Who is online? 185 guests and 0 members
Member login | Become a member
posted 7/16/2009 12:33:50 PM by vivek_iit
Many beginner developers do not realize how effcient caching mechanisms can play a big role in increasing application performance. Most developers are accustomed to using the default In-Proc session state, or the Cache object to store the application related data. While such in-built caching mechanisms will work perfectly fine for most applications which do not need to scale to higher levels, it is always better to go for scalable caching options if your application might grow (both in terms of concurrent users and site hits) in future.
Creating your own custom wrapper around the Cache object is one good step in this direction, but then manually handling distributed caching is a daunting task. Memcached is one excellent distributed memory object caching system (being used in big sites like Livejournal and Facebook) but it primarily caters for Linux systems. There are ports for using it in Windows boxes, here are some links:
http://jehiah.cz/projects/memcached-win32/
http://sourceforge.net/projects/memcacheddotnet/
Microsoft has been working on its own scalable distrubuted caching system, called as Velocity, and here is some info on it:
“Velocity” is a distributed in-memory application cache platform for developing scalable, available, and high-performance applications. “Velocity” fuses memory across multiple computers to give a single unified cache view to applications. Applications can store any serializable CLR object without worrying about where the object gets stored. Scalability can be achieved by simply adding more computers on demand. “Velocity” also allows for copies of data to be stored across the cluster, thus protecting data against failures. “Velocity” can be configured to run as a service accessed over the network or can be run embedded with the distributed application. “Velocity” includes an ASP.NET session provider object that enables ASP.NET session objects to be stored in the distributed cache without having to write to databases. This increases the performance and scalability of ASP.NET applications.
Currently its in CTP (CTP3 got released recently) and CTP4 is due in September. Once we get a stable release, I think Velocity is the way to go while developing scalable distributed caching systems in big ASP.NET applications.
vivek_iit (Member since: 11/27/2008 11:54:25 AM) I am one of the administrators at CodeAsp.Net and I love programming, architecting solutions, code reviews, teaching and writing about ASP.NET.
View vivek_iit 's profile
Leave a comment
It's fast, easy and free! Submit articles, get your own blog, ask questions & give answers in the forums, and become a better developer, faster.
enter your email address: