The Jason Salas Experience

Guam's Mr. Media - making people think, making people laugh, pissing people off

Tuesday, December 13, 2005

Scalability issues in a Web 2.0 world

I'm a few days late jumping into the game, but I've been thinking about the arguments/suggestions proposed for and against scalability in Web 2.0 architectures. Notably, the contributions of Om Malik and Jeremy Wright on the topic - essential reading for those interested - has brought to light issues that can affect an application's performance and survivability when heavily promoting external use concepts like RSS, remixing, multiplatform distribution, and web services. We're way beyond basic HTML page requests here.

I've noticed such activity dramatically affect my own site's traffic, to the point where requests for my RSS feeds are now exceeding my normal web hits. Putting it into perspective, opening up access to your data, even at an abstracted level, means you need to build your apps with scalability as a critical major Consider the additional imposition that requests outside the controllable scope of your app will mean for your database. If you manage a popular web site, incorporating Web 2.0-style functionality such that people can program against it and use your data creatively within their own implementations, plus accessing your stuff through RSS syndication, you introduce a bandwidth and capacity load requirement that desktop tools like Microsoft Access would never be able to handle.

Thus, designing your apps with enterprise-level tools and technologies and the use of data caching across multiple platforms is critical. Proper memory management through timely object disposal and garbae collection at the mid-tier level is a must. Also, intelligent management of a caching tier is necessary - not to over inundate such a layer with excessive items stored for too long of a period, so as to conserve server RAM. It's probably also a good idea to implement a license policy that limits the number of times a web-callable function can be executed in a given time period, using a limited free an unlimited paid version. This model provides semi-controllable traffic while driving revenue for expansion in the event your service does become extremely popular.

As in most things in life, proper planning, research and testing can mean the difference between a good and great app. And in extreme traffic scenarios, could cost you your uptime.

0 Comments:

Post a Comment

Links to this post:

Create a Link

<< Home