This page was last edited on July 30, 2015, at 19:32.
Comments or questions about this documentation? Contact us for support!
This article describes the result of load testing performed using Pulse release 8.5.101 and serves as a guideline for Pulse capacity and resource usage. For a production deployment, you must test Pulse in your own environment under a production load to ensure its performance meets your expectations and is sized properly.
vCPU | ECU | Memory (GiB) | Instance Storage (GB) | |
---|---|---|---|---|
c3.8xlarge | 32 | 108 | 60 | 2 x 320 SSD |
Each node has cluster of 3 Pulse Collectors, 3 Stat Servers and 1 GAX instance
Collectors and Stat Servers are connected to each other in HA mode (1 Pulse Collector on each node is connected to Stat Server on same node and StatServer on another node).
Widget and Statistic notification rate: 10sec
Change based statistics (and quick updates feature of Pulse) are not used.
If you use change based statistics in your configuration (and they are not Agent State statistics) make sure you set sensitivity such that Stat Server sends notifications no more often than once a second.
Amount of Stat Server notifications with change based statistics can be unpredictable and be an order of magnitude greater than with time based so they must be carefully tuned (using sensitivity) and tested
Number of layouts (widgets) = 2400
Total Number of Statistics Requests to Stat Servers = Sum of (Number of Objects * Number of Stat) across all widgets = 1,740,000 (1.7M)
As result we get 1.7M notifications from Stat Servers every 10 seconds so 170K updates per second.
Pulse DB size is 31260672 bytes for ~ 2500 layouts so 12.5Kbytes per layout (widget)
This load was split between 3 Pulse Collectors/Stat Server pairs (in cluster)
Each Pulse Collector in cluster processed 800 layouts and consumed following:
Because Collector queues the messages that come from Stat Server the memory consumption above is achieved when there is no backlog - i.e Collector is able to process all layouts and save them as it gets the data.
If Pulse Collector cannot process all Stat Server messages it receives, it expands its memory size (use statistic-request-handling/max-stat-data-queue-size option to control it)
GAX resource consumption: