TOWARD THE GLOBAL INTELLIGENT ENTERPRISE World ClassIf your strategic business app is expanding beyond departmental and national boundaries, select your scalability strategy carefully
By Debashish Bhattacharjee Web-based strategic business applications such as enterprise portals can grow very rapidly. Their architects often find that they need to deploy such applications, which had been designed for a few offices, to multiple international locations. The good news is that these apps lend themselves more easily to distribution than traditional client/server or mainframe varieties. It also helps that a number of technology vendors have been working on the problem of creating a global Web infrastructure for some time. Therefore, several solutions exist for the application architect: extending the existing system by using a centralized approach thus adding bandwidth and utilizing infrastructure products to improve access to the system; replicating the infrastructure across the globe; or leveraging the global infrastructure provided by content delivery networks such as those available from Akamai Technologies Inc., Inktomi Corp., and Exodus (formerly Digital Island). In this article, I'll describe some of the trade-offs involved. Web Infrastructure ComponentsFirst, let's review the different components that form the infrastructure of a Web-based strategic business application.
A well-designed Web application, of course, can be partitioned into layers for presentation, applications, data, and integration:
So, what problems are unique to global architecture design? The first challenge is the WAN, which connects users across the globe to the application. The application architect must account for the Internet's imperfect design; the "last mile" problem, bandwidth constraints, and network latency make the WAN a performance bottleneck. Scalability is also a big issue for e-business applications because they're more susceptible to sudden bursts of peak activity. In those cases, redundancy and load-balancing solutions need to be employed so that hardware and software resources are more fully utilized. Furthermore, availability requirements are more stringent for global applications because they must accommodate users in varying time zones. As you read further, you'll see that the three approaches I've described tackle these challenges in different ways. Table 1 rates each of these models on a scale of 1 to 4 with respect to performance, scalability, availability, and maintenance. The Centralizing InstinctIn the centralized model, the application is installed at a central location and users connect to it from remote offices using dedicated network connections or the Internet. This model is simple and affordably maintained, but it isn't very scalable. However, you have two options to improve the application's processing power: increase the system's "horsepower," or improve network access to the application. You can add more horsepower by purchasing additional hardware and configuring the Web and application servers in a cluster or load-balanced workgroup. Clustering, usually done at the operating system level, provides redundancy and load-balanced processing across the different machines that make up the cluster. Load balancing can be achieved by tying your Web and application servers to a load-balancing switch. The load-balancing device can then distribute load evenly across the various servers attached to it. The trade-off between load balancing and clustering is scalability vs. ease of maintenance. Load-balancing solutions tend to scale more uniformly but are more difficult to maintain. While additional CPU helps, networks are the main bottleneck in a globally centralized application. Reducing network congestion and latency and making more bandwidth available to the application can increase the application's throughput. The obvious solution is to upgrade existing network connections to media that support higher bandwidth and lower network latencies. The problem is that in some continents, support for high-speed networks doesn't exist, especially when intercontinental data transport is involved. Fortunately, other forms of bandwidth management do exist. Packet-filtering and prioritization software, such as PacketShaper from Packeteer Inc., can be used to prioritize and guarantee the delivery of application-specific network traffic. Furthermore, you can extend this centralized model to include cache servers. Caching is a technique that utilizes specialized devices to build a "cache" of frequently accessed data. These caches are placed at strategic locations across your global enterprise. Subsequently, when a specific resource such as an image or HTML page is to be fetched, it can be obtained from the cache rather than the remote Web server.
|
Most Popular This Week
IE Weekly Newsletter
Subscribe to the newsletter
|
|
|











