So, you've now reached a stage where your application has acquired a certain level of maturity. You understand how to apply and benefit from WebLogic's support for various J2EE services. You've set up a working domain, perhaps even several WebLogic clusters that model the various application tiers. You've deployed your application components and ensured that all necessary WebLogic resources and services are available and configured properly. You've also deliberated on the network and hardware infrastructure needs of your production environment. Now you must determine how your application performs under live conditions, monitor its execution, and tune the entire system.
Somehow, you need to verify that your application setup is optimal, and that it performs to its maximum capacity. As this chapter shows, this is as much an art as it is a science. It is beyond the scope of this book to look at all performance-related aspects of your application setup. We would require several books to do justice to tuning your operating system, your hardware resources, and your network infrastructure. Far too many variables are involved, not the least of which include the different platforms, vendors, and architectures we'd need to consider. Instead, we focus on how to improve the performance of WebLogic and the most important WebLogic features your application may use. We do this by examining three topics. First, we examine how to monitor and tune the major J2EE components that your application most likely will use. This includes the HTTP sessions, JDBC pools, JMS server, and EJBs. We then look at how to tune WebLogic itself, which chiefly entails the configuration and monitoring of the execute queues and server threads. Finally, we look at a few optimizations that can be made at the JVM level.
Introduction
Web Applications
Managing the Web Server
Using JNDI and RMI
JDBC
Transactions
J2EE Connectors
JMS
JavaMail
Using EJBs
Using CMP and EJB QL
Packaging and Deployment
Managing Domains
Clustering
Performance, Monitoring, and Tuning
SSL
Security
XML
Web Services
JMX
Logging and Internationalization
SNMP