326 CHAPTER 12 TRENDING, FORECASTING, AND CAPACITY (Professional web hosting)

326 CHAPTER 12 TRENDING, FORECASTING, AND CAPACITY PLANNING Analyzing resource use for trends is important because of the following specific reasons: Thread utilization identifies the number of simultaneous requests that are being processed as well as the throughput of the application. If the thread pools are sized too large, then the system could become saturated as the CPU wastes too much time context switching between the threads. If the thread pools are sized too small, then incoming requests will have to wait for an execution thread to process them, and therefore both response time and throughput will degrade. Connection pools control the number of simultaneous threads that can access a resource such as a database. If they are sized too large, then the resource experiences an extra burden, and the application server loses the memory required to maintain them. If they are sized too small, then execution threads may be forced to wait for a connection to be returned to the pool, and as a result, response time will degrade. Object pools, such as stateless session bean and message-driven bean pools, face a similar dilemma. If they are too large (greater than the size of the execution thread pool), then the application server must maintain additional unused resources. If they are sized too small, then execution threads may be forced to wait for an object to be returned to the pool, and as a result, response time will degrade. Caches can be more difficult to analyze and detect trends for, but they are incredibly important to the performance of your application. A properly sized cache can increase the performance of your application dramatically, while a poorly sized one can have the opposite effect. A cache that is sized too large can unnecessarily occupy a significant amount of memory, while a cache sized too small can thrash and add significant cache-management overhead to the response time. The CPU is probably the easiest resource to analyze, because your process CPU utilization can be quantified by a number. During peak times, very low CPU utilization may mean that your environment is oversized, causing added expenses for excess application server licenses, support staff, hardware, hardware support licensing, network devices, and so forth. But if the CPU is saturated, then the server spends more time accomplishing less, resulting in degraded response times. The point in analyzing these resources and identifying trends in their behavior is to ensure that your environment is currently running optimally as well as to serve as a foundation upon which to construct forecasts that predict when resource configurations need to change or when new resources need to be added. Response Time Patterns While we have looked at usage patterns and environmental patterns such as the heap and other resources, the most important trend to identify from a business impact perspective is the behavior of service request response times. All other trends help manage the environment in hopes of mitigating their impact on response times they serve as early warning indicators to preserve the integrity of your SLAs. Response time patterns should be monitored similarly to resource utilizations, but rather than creating a model that identifies outlier behavior, quantifying the weak points in the response times is more important. We look at four specific metrics with respect to response time:
If you are in need for chaep and reliable webhost to host your website, our recommendation is http web server services.

Leave a Reply