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 laterInformation 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 |