Operating system considerations

Make sure that your system meets the minimum operating system requirements. In a production environment with numerous concurrent users, multiple processors help increase performance. In addition to using faster processors to speed up most operations, there are other areas to consider when you want to improve operating system performance.

Here are some of the performance considerations at the moment of tuning any WebSphere Commerce website from the operating system level.

Minimize the number of applications that are running on each system

Ideally, in a multitier environment, each system has its own dedicated tasks to do. For example, a database server runs a database engine to serve requests from the WebSphere Commerce Server only. In the real world, sometimes you might find that servers are doing other tasks that are not related to the WebSphere Commerce site, wasting valuable system resources. Here are some examples of inappropriate server use:

  • Using the system for multiple purposes. A system that should be a dedicated database server for WebSphere Commerce might also be used as an FTP server. In this case, this server distributes resources between the database server and the FTP service that is running on the same system, reducing the performance of the database.
  • Background services and applications that do not necessarily need to be running. Some operating systems have some default servers or services that are running in the background. These processes might not be used at all, and are not needed by your WebSphere Commerce site. By disabling or removing these programs, extra memory and processor cycles can be freed up for WebSphere Commerce.
  • Running any type of terminal emulation servers in background. These applications use many resources, especially processing power. Avoid them in production environments.
  • Running graphical programs such as DB2 Control Center, Tivoli Performance viewer, or even a web browser. These programs can usually be run remotely from a client system to have less performance impact on the server.

Virtual memory

Virtual memory is created by using the hard disk drive to simulate extra random-access memory. When physical memory runs out, the virtual memory manager chooses sections of memory that were not been recently used and writes them to disk. It is a built-in feature of all the modern operating systems today and this process is not apparent to the application.

Virtual memory is much slower than random access memory because it must read and write to the physical hard disk drive. As a result, configure all the servers with enough physical memory to minimize the use of virtual memory.

Process priority

Each server has numerous processes that run at the same time. One of the responsibilities of any preemptive operating system is to manage multiple processes and programs that are running concurrently.

WebSphere Commerce performance might be improved by giving higher priority to those processes that are important to achieve high throughput, for example, background Java processes running Commerce servers. You can also minimize the processor impact on other less relevant processes, for example, a Java GUI running in foreground to monitor performance.

How to modify the process priority varies from one operating system to another. In Microsoft Windows, for example, process priority can be changed by right-clicking the desired process from the process tab in the Task Manager and selecting set-priority. The priority by default is set to normal.

Operating system resource monitoring

Improving performance is always a matter of identifying where the bottleneck is and applying some configuration change to avoid it. Ability to monitor the operating system performance characteristics is one of the most essential skills that are needed to ensure good performance of the system.