Python Agent Performance

Greetings

has anybody done any measurement about performance impact of Elastic APM on a django stack ?
AFAIK ElasticAPM works in a blocking fashion and if a request to APM Servers takes long, django app will be slowed down .
is there any insight about this case ?
any help/thought is appreciated

Hi Reza

by default, the Python agent sends data to the APM Server using a background thread, so it shouldn't block your main thread and impact the performance of your Django app.

Of course, measuring the performance of your app in as much detail as we do comes with a certain overhead. How much that overhead is exactly is difficult to say, as it depends a bit on your specific use case. But there are quite a few settings that you can play around with to tune performance. You can read more about that in our docs.

We're also working on an automated benchmark suite for the agent (https://github.com/elastic/apm-agent-python-benchmarks), that's work in progress, though.

great , thanks a lot beniwohli

if you could provide more doc about deploying APM Server in production . like minimum requirements and sample nginx configs that would be great
thank you very much for your help

1 Like

Sizing APM Server for production workloads depends on a number of factors - see https://www.elastic.co/guide/en/apm/server/6.4/tune-apm-server.html for the most critical tunables. At a minimum, we recommend deploying 2 instances for HA purposes - see https://www.elastic.co/guide/en/apm/server/6.4/high-availability.html for some relevant information. You may also want to subscribe to this issue under which this kind of documentation may be added.

This topic was automatically closed 20 days after the last reply. New replies are no longer allowed.