Server sizing
Server sizing for common deployment scenarios.
For a single-server NightWatchman deployment
Number of machines |
5,000 |
25,000 |
50,000 |
100,000 |
Benchmark configuration |
|
|
|
|
Number of clients polling and posting messages per hour |
5,000 |
12,500 |
25,000 |
50,000 |
Messages per batch/client |
12 |
15 |
15 |
18 |
Number clients to be deployed concurrently |
2,500 |
2,500 |
5,000 |
5,000 |
NightWatchman server |
|
|
|
|
CPU cores |
1 |
1 |
2 |
3 |
RAM |
6 GB |
6 GB |
8 GB |
8 GB |
SQL Server instance max memory |
2 GB |
2 GB |
4 GB |
4 GB |
Database connection max pool size |
10 |
15 |
15 |
20 |
Total disk space required for databases |
6.5 GB |
30 GB |
55.5 GB |
111 GB |
SQL Server HDD requirements |
|
|
|
|
NightWatchman database MDF |
5 GB |
24 GB |
45 GB |
90 GB |
NightWatchman database LDF |
1 GB |
5 GB |
9 GB |
18 GB |
TempDB MDF |
100 MB |
500 MB |
1 GB |
2 GB |
TempDB LDF |
40 MB |
200 MB |
400 MB |
800 MB |
For a distributed NightWatchman deployment
Number of machines |
50,000 |
200,000 |
500,000 |
Benchmark configuration |
|
|
|
Number of clients polling and posting messages per hour |
25,000 |
100,000 |
250,000 |
Messages per batch/client |
15 |
18 |
18 |
Number clients to be deployed concurrently |
5,000 |
5,000 |
5,000 |
NightWatchman server |
|
|
|
CPU cores |
1 |
2 |
4 |
RAM |
4 GB |
4 GB |
4 GB |
Database server |
|
|
|
CPU cores |
1 |
2 |
4 |
RAM |
8 |
10 GB |
12 GB |
SQL Server instance max memory |
4 GB |
6 GB |
8 GB |
Database connection max pool size |
15 |
40 |
70 |
Total disk space required for databases |
55.5 GB |
222 GB |
554 GB |
SQL Server HDD requirements |
|
|
|
NightWatchman database MDF |
45 GB |
180 GB |
450 GB |
NightWatchman database LDF |
9 GB |
36 GB |
90 GB |
TempDB MDF |
1 GB |
4 GB |
10 GB |
TempDB LDF |
400 MB |
2 GB |
4 GB |
For the WakeUp servers
Number of machines |
5,000 |
25,000 |
50,000 |
100,000 |
200,000 |
500,000 |
Number of WakeUp servers |
1 |
1 |
1 |
2 |
4 |
10 |
Wakeup server |
|
|
|
|
|
|
CPU cores |
2 |
2 |
2 |
2 |
2 |
2 |
RAM |
2 GB |
2 GB |
2 GB |
2 GB |
2 GB |
2 GB |
Time to wake-up (approximate) |
5 mins |
10 mins |
15 mins |
15 mins |
15 mins |
15 mins |
Benchmarking criteria
-
Benchmarked against Windows Server 2012 R2 Hyper-V infrastructure, with database and application server components setup on separate VMs.
-
CPU (NWM Server) - Hyper-V host CPU configuration - 2x Intel Xeon CPU E5-2407 v2 @ 2.40GHz, 10M Cache, 4C, Max Mem 1333MHz.
-
CPU (WakeUp Server) - Hyper-V host CPU configuration - Intel Xeon Processor E5-2620 v3 @ 2.40GHz, 15M Cache, 6C/12T, Max Mem 1833MHz.
-
All VMs connected over a 1Gbps link through a 1Gbps physical switch.
-
Database storage – Samsung 850 EVO solid state drives attached locally to the Hyper-V host, with up to 98k/90k IOPS (4K random read/write QD32), and MDF, LDF and TempDB on separate SSDs.
Recommendations
Servers can be deployed either on physical or virtual machines. For deployment on a virtual machine, assign the CPU cores at 100% virtual machine reserve.
-
NightWatchman server:
-
Based on the numbers of clients machine, tune the Max Pool Size database connection parameter in C:\Program Files (x86)\1E\NightWatchman Management Center\WebService\Web.config
-
Install no more that 2,500 new clients concurrently in environments up to 25,000 machines.
-
Install no more that 5,000 new clients concurrently in environments with 50,000 machines or more.
-
-
NightWatchman database server:
-
Deploy data, logs and TempDB on separate physical disks.
-
Configure SQL Server with maximum server memory limit and not at the defaults to consume unlimited memory.
-
4GB RAM should be added for the operating system on top of SQL Server instance RAM requirements.
-
-
WakeUp Server
-
Have separate Wakeup servers for every 50,000 clients.
-