Hardware Performance Considerations

Learn about the hardware performance considerations.

Aurea CRM web is a multi-tier application. Separate the tiers (client/web application/database) physically for optimal performance.

The best performance is achieved when each tier runs on an independent computer.

Capacity planning for a web server is not an easy task. You must specify current and future needs and choose hard- and software that meets both current and the estimated future requirements. You find some interesting considerations regarding capacity planning at the Microsoft TechNet, http://www.microsoft.com/technet/prodtechnol/windows2000serv/technologies/iis/reskit/iischp4.mspx.

Client

Aurea CRM web's architecture tries to leverage the resources of the clients as much as possible. This minimizes both data transfer rate and the number of round trips between client and server. It also takes a lot of load from the server, and thus increases server performance and scalability.

Instead of sending HTML to the clients, Aurea CRM web sends only raw JSON data to the clients. The clients (web browser) use this JSON data to generate the user interface (HTML markup).

A fast client is more important than a faster connection to the web server.

Web Server

To determine the best web server hardware, you must analyze the client-side user behavior first.

The two main criteria are:

  • The number of concurrent user requests
  • The "quality" of the requests

The higher the number of concurrent requests, the higher is the need for parallel processing. This demand can be met in several ways:

  • Add more CPU cores to your server. The administration efforts do not increase, but costs are higher. This is the best solution for many "light" user requests.
  • Dedicated servers help sharing the workload by distributing all users into groups and assigning each group to an individual web site. Groups then operate on physically independent computers (besides the database). This increases the administration efforts, but also allows you to give each group the resources they need. If you e.g. separate power users and average users, the time-consuming queries of power users do not interfere with the simple requests of average users.
  • Web farms allow multiple servers to act as a single web site. The clients access only one site, where the requests are automatically distributed among the participating servers. Site administration increases since all servers need to act exactly in the same manner. Therefore, all installed software must be of exactly the same version. Web farms allow you to scale up the site very easily by adding additional servers.

    For more information, see Running Aurea CRM web in a Windows Server Network Load Balancing Cluster.

    Use this approach if the other scenarios mentioned cannot handle the workload or when you expect the number of user requests to grow rapidly over time.

The intensity of user access to an application varies. Therefore, estimate the number of users per user characteristic (power user, heavy user, structured user and informational user, etc.) to calculate the hardware needs accurately.

Database

See the manuals of your database vendor regarding database settings. Optimizing your database heavily depends on the user behavior analysis.