What is this?

This knowledgebase contains questions and answers about PRTG Network Monitor and network monitoring in general.

Learn more

PRTG Network Monitor

Intuitive to Use. Easy to manage.
More than 500,000 users rely on Paessler PRTG every day. Find out how you can reduce cost, increase QoS and ease planning, as well.

Free Download

Top Tags

View all Tags

PRTG Web Server - Use HTTP Keep-Alive by Default



Want this feature implemented, too? Please upvote by clicking Thumbs up!

(Posts as a reply won't be published in this feature request thread. Read Me!)

User story

As a PRTG user, I want the PRTG Web Server to reuse existing connections for increased performance.

Details of user story

As I mentioned in a previous KB post, I noticed that when connecting to a PRTG Web Server, the HTTP/1.1 Connection header is set to "closed" on the server by default, and the only way to turn this back on is via a registry edit. This is detrimental to performance, especially in cases where the web server is quite a distance away, as this forces every request to make a new connection, establish an SSL handshake, etc.

For example, when connecting to one of our more distant servers, of the 23 network requests made during a navigation to the home page (/welcome.htm), total time to complete all requests is 13.35 seconds. On average, each of these requests spent 52.69% of its total time either establishing a connection, or waiting for a slot in the browser request pool. When using the API, this disparity can be significantly worse, as calls for small pieces of data will spend upwards of 80% of its time on just the initial connection.

As a result, I'd like the server to respond with the "keep-alive" value for the Connection header instead. To my understanding, this used to be the default functionality in a previous PRTG version. I'm not sure if this was changed to prevent idle connections from hogging resources, but the vast majority of other sites have been able to manage this aspect of HTTP/1.1 for well over a decade. Not using persistent connections is effectively downgrading to the 25-year old HTTP/1.0 and the performance difference is significant with distance to the server.

Acceptance criteria

  • By default, the PRTG Web Server should respond to HTTP/1.1 requests with the Connection header set to "keep-alive".
  • Implement this in such a way that idle connections do not result in a memory/resource leak. This may be enforced by giving a max time to all connections before dropping.



improve-prtg keep-alive performance prtg-kbtracker prtg-web-server

Created on May 17, 2022 6:23:22 PM


Nobody has replied yet

Disclaimer: The information in the Paessler Knowledge Base comes without warranty of any kind. Use at your own risk. Before applying any instructions please exercise proper system administrator housekeeping. You must make sure that a proper backup of all your data is available.