ExtremeZ-IP stops accepting new connections after 700-800 users

1 Star2 Stars3 Stars4 Stars5 Stars
Loading...
  • Product:
    ExtremeZ-IP
  • Version:
    4.1-4.2.4
  • Document Type:
    Info
  • Revised:
    2/27/2007
  • Reviewed:
    2/27/2007

Summary:

A Windows application cannot use more than a 2GB address space regardless of how much RAM or virtual memory the server actually has installed. With several hundred users connected, the server may not be able to allocate enough memory to create a new session.

Description:

Unless the special “\3GB” boot.ini switch is enabled, no Windows process can have more than a 2GB address space regardless of how much RAM or virtual memory the server actually has. By default, each Windows thread reserves 1MB of memory for itself and each ExtremeZ-IP user has one thread for sending data and one for responding to commands. This means that there is 2MB of memory used per logged in user. The 2GB process limit combined with the 2MB per user limits ExtremeZ-IP 4 to having less than 1000 users* (the actual number will be lower due to the file indexes, etc). Fortunately ExtremeZ-IP user threads only need to use 384KB or less of memory, and if you are using Windows 2003 and above with ExtremeZ-IP 4.1 or later the default thread size can be adjusted.

To change the amount of memory per thread a special Registry key will need to be created as described in the ExtremeZ-IP online help and reproduced below.

ThreadStackSize
Description: The size of a fragment of the process address space that will be reserved to accommodate the stack frame for each newly created thread, in kilobytes. This feature is only available on Windows XP and Windows Server 2003; valid values for this parameter are 256 to 1024.
Default: 1024
Refreshable: No

The following registry import file can be used to set it to 384K (180 in hexadecimal), which we have tested extensively.

Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ExtremeZ-IP\Parameters4\NonRefreshable]
“ThreadStackSize”=dword:00000180

* ExtremeZ-IP version 5’s new threading architecture uses a “pool” of threads to support thousands of users instead of allocating two threads per user as in version 4. This significantly reduces memory and system utilization.

Tags: