My Oracle Support Banner

Oracle HTTP Server SSL Proxypass With Chunked Data Responses Causes High CPU Usage (Doc ID 2327240.1)

Last updated on SEPTEMBER 11, 2023

Applies to:

Oracle HTTP Server - Version 11.1.1.7.0 and later
Information in this document applies to any platform.

Symptoms

When ProxyPass requests are forwarded to a webserver's SSL port and chunked data responses are returned, this caused the httpd.worker process to immediate consume high cpu eg. 80% or higher as observed in top output.

strace show repeating " -1 EAGAIN (Resource temporarily unavailable)" entries and no data read from the file descriptor(fd)

[pid 3658] clock_gettime(CLOCK_REALTIME, {1507221405, 625579881}) = 0
[pid 3658] clock_gettime(CLOCK_REALTIME, {1507221405, 625611598}) = 0
[pid 3658] read(19, 0x25bf048, 8000) = -1 EAGAIN (Resource temporarily unavailable)
[pid 3658] clock_gettime(CLOCK_REALTIME, {1507221405, 625684088}) = 0
[pid 3658] clock_gettime(CLOCK_REALTIME, {1507221405, 625715953}) = 0
[pid 3658] read(19, 0x25bf048, 8000) = -1 EAGAIN (Resource temporarily unavailable)
[pid 3658] clock_gettime(CLOCK_REALTIME, {1507221405, 625788549}) = 0
[pid 3658] clock_gettime(CLOCK_REALTIME, {1507221405, 625820423}) = 0

Issue does not reproduce if request is forwarded to back-end server's http port. Issue only reproduce if SSL is used between OHS and back-end server.

Changes

Following is a sample configuration to reproduce the issue.  The application in server1.oracle.com returns chunked data.

SSLProxyEngine on
SSLProxyWallet "/tmp/testwallet"
ProxyPass / https://<FQ_HOSTNAME>/
ProxyPassReverse / https://<FQ_HOSTNAME>/ 

Cause

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


In this Document
Symptoms
Changes
Cause
Solution
References


My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.