[Top] [Prev] [Next] [Bottom] [Contents]

Client-Side Solutions

Faced with the imminent collapse of your Web server, your team develops a client-side calculator using Java or JavaScript. You embed the script into an HTML page and place it on a Web site running on a Pentium 100 with 64 MB RAM.

In the course of the next week, 100,000 users have tried your calculator. Each had to download it once. But, because of your client-side solution, that's the only hit that particular "object" will cause to your Web site. Once users download the client object, they no longer need to download anything more. They can click and use the calculator and run at the speed of their local machine rather than at the pace of a bogged-down network or Web site. If their browser caches the calculator page or the user is intelligent enough to save it to disk, they may not ever need to download it again.

Another Approach

Your team may not have to develop its own calculator to solve the problem-it might be easier to use an off-the-shelf client object.

There is a whole industry creating client objects. Thousands are available right now, and almost certainly hundreds of thousand by the end of 1997. Some of these objects are available for free; others might cost several hundred dollars. For example, on the Gamelan WWW site http://www.gamelan.com we found ten different calculators available for download! Sapphire/Web can be used to integrate such off-the-shelf client objects into your customized project.

Client-side vs. Server-side

Let us now compare numbers. Many comparisons are made using arbitrarily obtained equivalences between cycles on the server and cycles on the client machine. We hold that the only cycles that really matter are user clock cycles! If the application appears slow, the user will become impatient and the perceived quality of the application will be degraded.

The server-side calculator receives about 48 million hits a day, from 300,000 users who each perform 160 operations a day. If your users use the site 200 days of the year, this is 9.6 billion hits annually!

The client-side calculator requires 300,000 hits on the Web server. If the calculator is cached on the user's machine, that's all the hits your server ever sees.

The server-side application requires 32,000 times as many hits on the Web server as the client-side application over the course of a year. Each new server-side user requires 160 hits a day; each new client-side user requires 1 hit total.

Thus the more popular an application using client objects is, the more it appears to have a higher quality than its server-side competition. The more users the latter has, the slower it is, whereas the former's performance will hardly change.

Conclusion

This difference in resources required leads to several bad paths.

1. The server-side version will not get much use: past some point, it will run too slowly to be used effectively. The average user will find that the response time of the calculator is longer than his or her attention span, so the process of calculation will break down from sheer forgetfulness!

2. Lack of use of the application results in a lack of productivity.

3. Large capital costs are needed to build the powerful Web site which the server-side application will need.

4. Both the user connection and the Web site network, and all networks in between, have to be improved and thus are more expensive to meet the increased traffic.

5. All other networking is bogged down by the increased traffic from many server-only applications.

6. The server-side application probably takes at least one week to develop. The client-side application may take a half hour to find, maybe purchase, and copy. This again is an order of magnitude improvement.

7. Maintenance costs for the server-side version are relatively expensive since you need all that mirroring and load balancing setup. The client-side automatically balances itself between all clients and the server.

8. The client-side object does not need complex Web server APIs which might lead to an unstable Web site if not properly used. If the Web site goes down (quite possible for the server-side only approach) all calculators stop. In the client-side approach, they keep on working.



[Top] [Prev] [Next] [Bottom] [Contents]

info@bluestone.com
Copyright © 1997, Bluestone. All rights reserved.