Monday, June 11, 2007

Are you thinking about Rich Internet Application?

Seems like big players like Sun, Microsoft, Adobe are moving into Rich Internet Application (RIA) or Web 2.0 space. Now, all of a sudden a developer has handful of technologies to choose from AJAX, Flex/Flash (Adobe), Silverlight (Microsoft), and JavaFX (Sun Microsystems). Which company is leading the RIA technology space? What RIA technologies you should pay attention to? If you have the same question that I did then check out SYS-CON. TV’s Live “RIA Shoot-Out”. @ http://tv.sys-con.com/read/385147.htm

Increasing number of companies want to consume data from their backend system (web services) and present it to their user in more appealing way. Things like performance, security, browser compatibility, accessibility, etc are important for success of each of these RIA technologies. RIA Shoot-Out points out that Adobe is leading the pack with its offering of flash based solution called Flex (Used by Yahoo Maps / Harley Davidson). Microsoft .NET based solution called Silverlight, and Sun’s Java based solution called JavaFX are still evolving. Ajax can be easily integrated with any of these technologies, so it is something that a developer should definitely be paying attention too.

Ajax is the default choice for companies that want to enhance their existing web application and have a bit of zing in it. A developer can do incremental additions to the existing website using one of the Ajax framework. If you are wondering what Ajax framework to choose then here are some options:

Enhance Website with Animation: Prototype, Spectacular

Larger Enterprise Application: Dojo, XAP

Also look at Yahoo Widgets (http://developer.yahoo.com) and Google Widgets (Google GWT)

Obviously there is lot of interest in Ajax related technologies, and hence we have hundreds of framework to choose from. It would be interesting to share our experience with a particular Ajax framework. I will have another post based on my experience related to RIA technologies.

Tuesday, October 17, 2006

Make your web application run like Ferrari car

Achieving highest possible performance and scalability for your web based application is a complex combination of many different factors. Performance is measured based on the response time to your client requests. Scalability is measured based on how those performance results change as you add load (more client/request) to the server. Throughput (number of request serviced over a given period of time) is also useful in measuring performance and scalability:

Factors affecting performance:

1)Hardware (Hard Disk, CPU, RAM, Network)
2)Software (Operating System, Virtual Machine, Memory Management, etc.)
3)Database and other external system response time (Database Queries, Web Service Consumption, LDAP Server Queries, and so forth)
4)Web/App Server Performance (look for benchmark for web/app server)
5)Application Code (Size of Objects, Ignore loops, Better Algorithm and Design, etc)

Pay special attention to these factors as you build your web application. Your car needs good engine, and your web application needs improved performance in all these factors.

So share your experience on improving performance and scalability for your web application.