You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
agent and server settings, versions, and protocol.
7
7
8
-
Let's look at a simple example that makes the following assumptions:
8
+
We tested several scenarios to help you understand how to size the APM Server so that it can keep up with the load that your Elastic APM agents are sending:
9
9
10
-
* The load is generated in the same region as where APM Server and {es} are deployed.
11
-
* We're using the default settings in cloud.
12
-
* A small number of agents are reporting.
13
-
14
-
This leaves us with relevant variables like payload and instance sizes.
15
-
See the table below for approximations.
16
-
As a reminder, events are
10
+
* Using the default hardware template on AWS, GCP and Azure on {ecloud}.
11
+
* For each hardware template, testing with several sizes: 1 GB, 4 GB, 8 GB, and 32 GB.
12
+
* For each size, using a fixed number of APM agents: 10 agents for 1 GB, 30 agents for 4 GB, 60 agents for 8 GB, and 240 agents for 32 GB.
13
+
* In all scenarios, using medium sized events. Events include
17
14
<<data-model-transactions,transactions>> and
18
15
<<data-model-spans,spans>>.
19
16
17
+
NOTE: You will also need to scale up {es} accordingly, potentially with an increased number of shards configured.
18
+
For more details on scaling {es}, refer to the {ref}/scalability.html[{es} documentation].
19
+
20
+
The results below include numbers for a synthetic workload. You can use the results of our tests to guide
21
+
your sizing decisions, however, *performance will vary based on factors unique to your use case* like your
22
+
specific setup, the size of APM event data, and the exact number of agents.
In other words, a 512 MB instance can process \~3 MB per second,
35
-
while an 8 GB instance can process ~20 MB per second.
57
+
| *16 GB*
58
+
(120 agents)
59
+
| 72,000
60
+
events/second
61
+
| 51,000
62
+
events/second
63
+
| 45,000
64
+
events/second
36
65
37
-
APM Server is CPU bound, so it scales better from 2 GB to 8 GB than it does from 512 MB to 2 GB.
38
-
This is because larger instance types in {ecloud} come with much more computing power.
66
+
| *32 GB*
67
+
(240 agents)
68
+
| 135,000
69
+
events/second
70
+
| 95,000
71
+
events/second
72
+
| 95,000
73
+
events/second
74
+
75
+
|====
76
+
77
+
:!hardbreaks-option:
39
78
40
79
Don't forget that the APM Server is stateless.
41
80
Several instances running do not need to know about each other.
42
81
This means that with a properly sized {es} instance, APM Server scales out linearly.
43
82
44
-
NOTE: RUM deserves special consideration. The RUM agent runs in browsers, and there can be many thousands reporting to an APM Server with very variable network latency.
83
+
NOTE: RUM deserves special consideration. The RUM agent runs in browsers, and there can be many thousands reporting to an APM Server with very variable network latency.
84
+
85
+
Alternatively or in addition to scaling the APM Server, consider
86
+
decreasing the ingestion volume. Read more in <<reduce-apm-storage>>.
0 commit comments