Saturday, July 26, 2008

Performance in Linux and Windows Servers

Performance of Windows Servers are quite unpredictable. The CPU mainly is totally not understandable. It does not show any trend. It could go to the peak load at very initial stages of the load test and would remain there for the remaining duration of the test run. Sometimes, it can also be observed that at some load, the CPU comes down and goes up again. Even the Memory and other parameters that are mainly considered for the performance tuning show sporadic nature. But the response times might show a constant trend. Due to these unpredictability, it is very difficult to predict the optimised Parameters of the performance.

Peformance of the same parameters in the Linux and AIX machines are very trendy. They show a particular trend with which it is very easy to predict and recommend various Performance parameters to optimise the performance of these Servers. It can even be observed that the response time statistics are very much in the trend with the UserLoad and CPU Utilisation, etc.

The observations are of my personal experience. Comments, suggestions and Views are welcome.

Tuesday, July 15, 2008

Understanding Architecture

Most important phase of performance tuning is to understand Architecture of the System under testing. Without understanding the end to end architecture, performance tuning is like “searching needle in hay”.
Few basic components and its definitions
  1. Load balancer -> Technique to spread work between two or more computers, network links, CPUs, hard drives, or other resources, in order to get optimal resource utilization, throughput, or response time.
  2. Web server -> A computer program that is responsible for accepting HTTP requests from web clients, which are known as web browsers, and serving them HTTP responses along with optional data contents, which usually are web pages such as HTML documents and linked objects such as images, css etc.,(usually static content)
  3. LDAP server -> The Lightweight Directory Access Protocol, or LDAP, is an application protocol for querying and modifying directory services running over TCP/IP. The most common example is the telephone directory, which consists of a series of names (either of persons or organizations) organized alphabetically, with each name having an address and phone number attached. Due to this basic design (among other factors) LDAP is often used by other services for authentication(SSA).
  4. Application Server -> An application server is a software engine that delivers applications to client computers or devices, typically through the Internet and using the HyperText Transfer Protocol. Application servers are distinguished from web servers by the extensive use of server-side dynamic content and frequent integration with database engines. An application server handles most, if not all, of the business logic and data access of the application.
  5. Database server -> complex set of software programs that controls the organization, storage, management, and retrieval of data in a database.

During testing, monitoring and logging all the components + OS involved is mandatory. Without monitoring all components including network, improvement/tuning acheived is pure luck.

Next blog plan: monitoring


Wednesday, July 2, 2008

Windows XP getting weird ??

Windows XP will either get into weird state or stop working if we haven’t rebooted the system for long time. Either we have to logout and login or reboot to make it run smoother.
There are alternatives out there.
Create desktop shortcut for “%windir%\system32\rundll32.exe advapi32.dll,ProcessIdleTasks” and then invoke the created shortcut whenever you feel the system is slow/weird.
Don't want to do this?? Simple: Update to SP1. (Seems to be fixed in SP1).