|
by Rohit Valia and Marina Sum November 25, 2002 Republished with permission from the Sun ONE Middleware Developer No matter which application server software you use, its performance is a critical measurement of cost-effectiveness and the end-user experience of your application. Despite the number of popular benchmarks available, no single benchmark can be used to predict the application server's performance, which depends on a variety of factors: This article describes how each of those factors influences the overall performance of your application server. Features of the Application ServerApplication servers provide a variety of features, whose performance affect an application's response time. In general, an application server environment provides these features either within or in conjunction with the application server:
The following block diagram shows some of the core features offered by Sun ONE Application Server 7:
Access PathsThe application server resides at the heart of the data center. Applications that run on an application server can access other resources and can be accessed through a variety of paths. The response time from the server, when accessed from devices or when it access resources, impacts the application's performance. It is, therefore, important to understand the access paths:
Application TypesDifferent types of applications use different components and access paths of the application server, both of which affect performance. The applications that run on an application server can be broadly classified as follows:
Each type of application has its own performance profile. To benchmark an application server, you would need to rely on performance benchmarks that represent that application. For example, you can use standardized benchmarks, such as ECPerf (now called SPECjAppServer) or the Web service measurement toolkit on the PushToTest site to understand the performance of application servers for specific types of application usage. Deployment TopologiesThe following two diagrams illustrate typical two-tier and three-tier deployment scenarios.
The multiple-tier model provides greater flexibility and tighter security. By taking advantage of its built-in SSL handling capabilities, Sun ONE Application Server 7 provides secure access to applications even when they are hosted on Tier 1. When you deploy applications with Sun ONE Application 7, you can direct the less security-sensitive requests to Tier 1 and more sensitive requests to Tier 2. In most enterprise deployments, you host the application server in Tier 2. ScalabilityYou can scale applications either vertically (on a single machine) or horizontally (on multiple machines). If you are using a large system, such as the Sun Enterprise 10000 (Starfire) machines, you should base your choice of application server on one that scales vertically. Doing so takes advantage of the caching that is available for multiple user requests. Similarly, if you are using a Blades architecture, such as the Sun Blade workstations, you should base your choice of application server on one that scales horizontally. Doing so results in enhanced serviceability but involves more moving parts. Also, having a larger number of servers incurs overheads in maintenance, especially if the application components are distributed on different servers. As a rule, however, the components are easier to service, and the hardware is simpler to replace. Sun ONE Application Server scales well--either vertically or horizontally. In weighing your choice, balance all the factors described here. ConclusionMany elements of the network topology--not just the J2EE containers--ultimately determine how well your application server performs. We recommend that, instead of relying only on industry benchmarks as your gauge, you also run benchmarks that mimic your application--such benchmarks are more reliable measurement tools. For details on performance and tuning, see the documentation for Sun ONE Application Server. For more information on the Sun ONE platform and its products, see Sun ONE for Developers About the AuthorsRohit Valia has been product line manager for Sun ONE Application Server for two years. Before assuming his current position, he was a developer for PC networking and firewall and security technologies for a decade and worked closely with major enterprise customers in gathering and determining the requirements for Sun ONE Application Server 7. Marina Sum is a staff writer for the Sun ONE Middleware Developer site. She has been writing for Sun for almost 14 years, mostly in the technical arena.
| |||||
|
| ||||||||||||