« What software runs on this site? | Main | Design Preparations for Scaling »
Saturday
Sep152007

The Role of Memory within Web 2.0 Architectures and Deployments

Although I have a basic working knowledge of memory, SSDs and the like, I am not technical...I have never developed or deployed a system. I was exposed to ram-disks years ago, when their expense limited their use to very small files or DB applications. I am looking to "get current" on what role memory plays in curremt WEB 2.0 design and deployments.

How is memory commonly used to remove latency and accelerate performance in typical Web 2.0 architectures? What role can memory play in massive scale-out implementations? Are there such a thing as memory "best practives"? If memory were cheap, would that significantly change the way systems are designed and deployed?

What commercial and open source products that use memory are used, what are the benefits and trade-offs?

Can anyone suggest what sources - people, books, papers, products - I might look into to gain a practical understanding of this topic?

Reader Comments (4)

Though I do read about people suggesting to build file systems on RAM, memory is mostly used for caching. Click on the memcached tag and you'll see how a lot of different websites are employing memcached for caching. But of course there's memory involved in database caching, OS caching, and hardware caching. And some people even advocate a pure memory architecture where you don't use a database or SQL at all.

All fairly standard. I don't know if ever seen a document like the "theory of memory in creating systems," but it might be interesting.

December 31, 1999 | Unregistered CommenterTodd Hoff

Mark, thanks for your reply. I have looked over the books in your store and have concluded the title: Web Caching by Duane Wessels is the best selection.

Would you agree, given I am somewhat non-technical?

December 31, 1999 | Unregistered CommenterAnonymous

Todd, excuse me for posting the wrong name.

December 31, 1999 | Unregistered CommenterAnonymous

"Though I do read about people suggesting to build file systems on RAM, memory is mostly used for caching."

Memory based solutions are already used for more then Caching i.e. as the system of record and for creating an entire middleware stack.

I had recently wrote few blogs on this matter: http://natishalom.typepad.com/nati_shaloms_blog/2007/09/putting-the-dat.html">Putting the Data-Base where it belongs
and http://natishalom.typepad.com/nati_shaloms_blog/2007/09/paas-persistenc.html">Persitence As A Service The later describes how we can use In-Memory DataGrid's to store the real time information of our application and have the data base as the backend storage that is being updated asynchronously.

HTH
Nati S.

December 31, 1999 | Unregistered CommenterNati Shalom

PostPost a New Comment

Enter your information below to add a new comment.
Author Email (optional):
Author URL (optional):
Post:
 
Some HTML allowed: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>