You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@httpd.apache.org by Frank Gingras <th...@apache.org> on 2022/04/04 11:56:24 UTC

Re: [users@httpd] httpd memory usage

The output from apachectl -M would help.

On Mon, 4 Apr 2022 at 08:18, Paul Gregory <pa...@aquaticsafaris.com> wrote:

> Hello,
> httpd is eating my server memory.   12GB of installed memory.
> I've read a lot of info on memory tuning, but can't seem to make it use
> less than shown below.
>
> Thanks for any and all help,
> Paul
>
>   PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
> 15890 apache    20   0 4291252   1.6g  10544 S   0.0 14.1   4:45.03 httpd
> 15891 apache    20   0 4383160   1.5g  10640 S   0.0 14.0   5:32.65 httpd
> 15756 apache    20   0 4156040   1.4g  10260 S   0.0 12.7   2:26.57 httpd
> 15730 apache    20   0 3697448 980.4m   9888 S   0.0  8.7   1:07.23 httpd
> 15729 apache    20   0 3229884 810576   6928 S   0.0  7.0   0:50.16 httpd
>
> Server info:
> # ./apachectl -V
> Server version: Apache/2.4.53 (Unix)
> Server built:   Apr  3 2022 08:22:55
> Server's Module Magic Number: 20120211:124
> Server loaded:  APR 1.7.0, APR-UTIL 1.6.1, PCRE 8.32 2012-11-30
> Compiled using: APR 1.7.0, APR-UTIL 1.6.1, PCRE 8.32 2012-11-30
> Architecture:   64-bit
> Server MPM:     event
>   threaded:     yes (fixed thread count)
>     forked:     yes (variable process count)
> Server compiled with....
>  -D APR_HAS_SENDFILE
>  -D APR_HAS_MMAP
>  -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
>  -D APR_USE_PROC_PTHREAD_SERIALIZE
>  -D APR_USE_PTHREAD_SERIALIZE
>  -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
>  -D APR_HAS_OTHER_CHILD
>  -D AP_HAVE_RELIABLE_PIPED_LOGS
>  -D DYNAMIC_MODULE_LIMIT=256
>  -D HTTPD_ROOT="/usr/local/apache-2.4.53"
>  -D SUEXEC_BIN="/usr/local/apache-2.4.53/bin/suexec"
>  -D DEFAULT_PIDLOG="logs/httpd.pid"
>  -D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
>  -D DEFAULT_ERRORLOG="logs/error_log"
>  -D AP_TYPES_CONFIG_FILE="conf/mime.types"
>  -D SERVER_CONFIG_FILE="conf/httpd.conf"
>
> MPM event settings:
> <IfModule mpm_event_module>
>     StartServers             5
>     MinSpareThreads         50
>     MaxSpareThreads        150
>     ThreadsPerChild         25
>     MaxRequestWorkers      200
>     MaxConnectionsPerChild 1000
> </IfModule>
>
>

Re: [users@httpd] httpd memory usage

Posted by Paul Gregory <pa...@aquaticsafaris.com>.
Thanks Frank.

I was looking at that.   I'm running "make test" on php 7.4.28 now.   I 
was on 7.4.25.

I'll take a look at php-fpm.

Regards,
Paul

On 4/4/22 10:14 AM, Frank Gingras wrote:
> The culprit is mod_php here (php7_module). I highly recommend 
> unloading that module, and using php-fpm to serve your php content:
>
> https://cwiki.apache.org/confluence/display/HTTPD/PHP-FPM
>
>
>
> On Mon, 4 Apr 2022 at 09:50, Paul Gregory <pa...@aquaticsafaris.com> 
> wrote:
>
>     Sure thing.  Here it is.
>
>     # ./apachectl -M
>     Loaded Modules:
>      core_module (static)
>      so_module (static)
>      http_module (static)
>      mpm_event_module (static)
>      authn_file_module (shared)
>      authn_core_module (shared)
>      authz_host_module (shared)
>      authz_groupfile_module (shared)
>      authz_user_module (shared)
>      authz_core_module (shared)
>      access_compat_module (shared)
>      auth_basic_module (shared)
>      socache_shmcb_module (shared)
>      reqtimeout_module (shared)
>      include_module (shared)
>      filter_module (shared)
>      mime_module (shared)
>      log_config_module (shared)
>      env_module (shared)
>      expires_module (shared)
>      headers_module (shared)
>      setenvif_module (shared)
>      version_module (shared)
>      ssl_module (shared)
>      unixd_module (shared)
>      status_module (shared)
>      autoindex_module (shared)
>      info_module (shared)
>      cgid_module (shared)
>      dir_module (shared)
>      alias_module (shared)
>      rewrite_module (shared)
>      http2_module (shared)
>      php7_module (shared)
>      jk_module (shared)
>
>
>     Thanks,
>     Paul
>
>     On 4/4/22 7:56 AM, Frank Gingras wrote:
>>     The output from apachectl -M would help.
>>
>>     On Mon, 4 Apr 2022 at 08:18, Paul Gregory
>>     <pa...@aquaticsafaris.com> wrote:
>>
>>         Hello,
>>         httpd is eating my server memory.   12GB of installed memory.
>>         I've read a lot of info on memory tuning, but can't seem to
>>         make it use less than shown below.
>>
>>         Thanks for any and all help,
>>         Paul
>>
>>           PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM    
>>         TIME+ COMMAND
>>         15890 apache    20   0 4291252   1.6g  10544 S 0.0 14.1  
>>         4:45.03 httpd
>>         15891 apache    20   0 4383160   1.5g  10640 S 0.0 14.0  
>>         5:32.65 httpd
>>         15756 apache    20   0 4156040   1.4g  10260 S 0.0 12.7  
>>         2:26.57 httpd
>>         15730 apache    20   0 3697448 980.4m   9888 S 0.0  8.7  
>>         1:07.23 httpd
>>         15729 apache    20   0 3229884 810576   6928 S 0.0  7.0  
>>         0:50.16 httpd
>>
>>         Server info:
>>         # ./apachectl -V
>>         Server version: Apache/2.4.53 (Unix)
>>         Server built:   Apr  3 2022 08:22:55
>>         Server's Module Magic Number: 20120211:124
>>         Server loaded:  APR 1.7.0, APR-UTIL 1.6.1, PCRE 8.32 2012-11-30
>>         Compiled using: APR 1.7.0, APR-UTIL 1.6.1, PCRE 8.32 2012-11-30
>>         Architecture:   64-bit
>>         Server MPM:     event
>>           threaded:     yes (fixed thread count)
>>             forked:     yes (variable process count)
>>         Server compiled with....
>>          -D APR_HAS_SENDFILE
>>          -D APR_HAS_MMAP
>>          -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
>>          -D APR_USE_PROC_PTHREAD_SERIALIZE
>>          -D APR_USE_PTHREAD_SERIALIZE
>>          -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
>>          -D APR_HAS_OTHER_CHILD
>>          -D AP_HAVE_RELIABLE_PIPED_LOGS
>>          -D DYNAMIC_MODULE_LIMIT=256
>>          -D HTTPD_ROOT="/usr/local/apache-2.4.53"
>>          -D SUEXEC_BIN="/usr/local/apache-2.4.53/bin/suexec"
>>          -D DEFAULT_PIDLOG="logs/httpd.pid"
>>          -D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
>>          -D DEFAULT_ERRORLOG="logs/error_log"
>>          -D AP_TYPES_CONFIG_FILE="conf/mime.types"
>>          -D SERVER_CONFIG_FILE="conf/httpd.conf"
>>
>>         MPM event settings:
>>         <IfModule mpm_event_module>
>>             StartServers             5
>>             MinSpareThreads         50
>>             MaxSpareThreads        150
>>             ThreadsPerChild         25
>>             MaxRequestWorkers      200
>>             MaxConnectionsPerChild 1000
>>         </IfModule>
>>
>

Re: [users@httpd] httpd memory usage

Posted by Frank Gingras <th...@apache.org>.
The culprit is mod_php here (php7_module). I highly recommend unloading
that module, and using php-fpm to serve your php content:

https://cwiki.apache.org/confluence/display/HTTPD/PHP-FPM



On Mon, 4 Apr 2022 at 09:50, Paul Gregory <pa...@aquaticsafaris.com> wrote:

> Sure thing.  Here it is.
>
> # ./apachectl -M
> Loaded Modules:
>  core_module (static)
>  so_module (static)
>  http_module (static)
>  mpm_event_module (static)
>  authn_file_module (shared)
>  authn_core_module (shared)
>  authz_host_module (shared)
>  authz_groupfile_module (shared)
>  authz_user_module (shared)
>  authz_core_module (shared)
>  access_compat_module (shared)
>  auth_basic_module (shared)
>  socache_shmcb_module (shared)
>  reqtimeout_module (shared)
>  include_module (shared)
>  filter_module (shared)
>  mime_module (shared)
>  log_config_module (shared)
>  env_module (shared)
>  expires_module (shared)
>  headers_module (shared)
>  setenvif_module (shared)
>  version_module (shared)
>  ssl_module (shared)
>  unixd_module (shared)
>  status_module (shared)
>  autoindex_module (shared)
>  info_module (shared)
>  cgid_module (shared)
>  dir_module (shared)
>  alias_module (shared)
>  rewrite_module (shared)
>  http2_module (shared)
>  php7_module (shared)
>  jk_module (shared)
>
>
> Thanks,
> Paul
>
> On 4/4/22 7:56 AM, Frank Gingras wrote:
>
> The output from apachectl -M would help.
>
> On Mon, 4 Apr 2022 at 08:18, Paul Gregory <pa...@aquaticsafaris.com>
> wrote:
>
>> Hello,
>> httpd is eating my server memory.   12GB of installed memory.
>> I've read a lot of info on memory tuning, but can't seem to make it use
>> less than shown below.
>>
>> Thanks for any and all help,
>> Paul
>>
>>   PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+
>> COMMAND
>> 15890 apache    20   0 4291252   1.6g  10544 S   0.0 14.1   4:45.03 httpd
>> 15891 apache    20   0 4383160   1.5g  10640 S   0.0 14.0   5:32.65 httpd
>> 15756 apache    20   0 4156040   1.4g  10260 S   0.0 12.7   2:26.57 httpd
>> 15730 apache    20   0 3697448 980.4m   9888 S   0.0  8.7   1:07.23 httpd
>> 15729 apache    20   0 3229884 810576   6928 S   0.0  7.0   0:50.16 httpd
>>
>> Server info:
>> # ./apachectl -V
>> Server version: Apache/2.4.53 (Unix)
>> Server built:   Apr  3 2022 08:22:55
>> Server's Module Magic Number: 20120211:124
>> Server loaded:  APR 1.7.0, APR-UTIL 1.6.1, PCRE 8.32 2012-11-30
>> Compiled using: APR 1.7.0, APR-UTIL 1.6.1, PCRE 8.32 2012-11-30
>> Architecture:   64-bit
>> Server MPM:     event
>>   threaded:     yes (fixed thread count)
>>     forked:     yes (variable process count)
>> Server compiled with....
>>  -D APR_HAS_SENDFILE
>>  -D APR_HAS_MMAP
>>  -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
>>  -D APR_USE_PROC_PTHREAD_SERIALIZE
>>  -D APR_USE_PTHREAD_SERIALIZE
>>  -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
>>  -D APR_HAS_OTHER_CHILD
>>  -D AP_HAVE_RELIABLE_PIPED_LOGS
>>  -D DYNAMIC_MODULE_LIMIT=256
>>  -D HTTPD_ROOT="/usr/local/apache-2.4.53"
>>  -D SUEXEC_BIN="/usr/local/apache-2.4.53/bin/suexec"
>>  -D DEFAULT_PIDLOG="logs/httpd.pid"
>>  -D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
>>  -D DEFAULT_ERRORLOG="logs/error_log"
>>  -D AP_TYPES_CONFIG_FILE="conf/mime.types"
>>  -D SERVER_CONFIG_FILE="conf/httpd.conf"
>>
>> MPM event settings:
>> <IfModule mpm_event_module>
>>     StartServers             5
>>     MinSpareThreads         50
>>     MaxSpareThreads        150
>>     ThreadsPerChild         25
>>     MaxRequestWorkers      200
>>     MaxConnectionsPerChild 1000
>> </IfModule>
>>
>>
>

Re: [users@httpd] httpd memory usage

Posted by Paul Gregory <pa...@aquaticsafaris.com>.
Sure thing.  Here it is.

# ./apachectl -M
Loaded Modules:
  core_module (static)
  so_module (static)
  http_module (static)
  mpm_event_module (static)
  authn_file_module (shared)
  authn_core_module (shared)
  authz_host_module (shared)
  authz_groupfile_module (shared)
  authz_user_module (shared)
  authz_core_module (shared)
  access_compat_module (shared)
  auth_basic_module (shared)
  socache_shmcb_module (shared)
  reqtimeout_module (shared)
  include_module (shared)
  filter_module (shared)
  mime_module (shared)
  log_config_module (shared)
  env_module (shared)
  expires_module (shared)
  headers_module (shared)
  setenvif_module (shared)
  version_module (shared)
  ssl_module (shared)
  unixd_module (shared)
  status_module (shared)
  autoindex_module (shared)
  info_module (shared)
  cgid_module (shared)
  dir_module (shared)
  alias_module (shared)
  rewrite_module (shared)
  http2_module (shared)
  php7_module (shared)
  jk_module (shared)


Thanks,
Paul

On 4/4/22 7:56 AM, Frank Gingras wrote:
> The output from apachectl -M would help.
>
> On Mon, 4 Apr 2022 at 08:18, Paul Gregory <pa...@aquaticsafaris.com> 
> wrote:
>
>     Hello,
>     httpd is eating my server memory.   12GB of installed memory.
>     I've read a lot of info on memory tuning, but can't seem to make
>     it use less than shown below.
>
>     Thanks for any and all help,
>     Paul
>
>       PID USER PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
>     15890 apache    20   0 4291252   1.6g  10544 S   0.0 14.1  
>     4:45.03 httpd
>     15891 apache    20   0 4383160   1.5g  10640 S   0.0 14.0  
>     5:32.65 httpd
>     15756 apache    20   0 4156040   1.4g  10260 S   0.0 12.7  
>     2:26.57 httpd
>     15730 apache    20   0 3697448 980.4m   9888 S   0.0 8.7   1:07.23
>     httpd
>     15729 apache    20   0 3229884 810576   6928 S   0.0 7.0   0:50.16
>     httpd
>
>     Server info:
>     # ./apachectl -V
>     Server version: Apache/2.4.53 (Unix)
>     Server built:   Apr  3 2022 08:22:55
>     Server's Module Magic Number: 20120211:124
>     Server loaded:  APR 1.7.0, APR-UTIL 1.6.1, PCRE 8.32 2012-11-30
>     Compiled using: APR 1.7.0, APR-UTIL 1.6.1, PCRE 8.32 2012-11-30
>     Architecture:   64-bit
>     Server MPM:     event
>       threaded:     yes (fixed thread count)
>         forked:     yes (variable process count)
>     Server compiled with....
>      -D APR_HAS_SENDFILE
>      -D APR_HAS_MMAP
>      -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
>      -D APR_USE_PROC_PTHREAD_SERIALIZE
>      -D APR_USE_PTHREAD_SERIALIZE
>      -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
>      -D APR_HAS_OTHER_CHILD
>      -D AP_HAVE_RELIABLE_PIPED_LOGS
>      -D DYNAMIC_MODULE_LIMIT=256
>      -D HTTPD_ROOT="/usr/local/apache-2.4.53"
>      -D SUEXEC_BIN="/usr/local/apache-2.4.53/bin/suexec"
>      -D DEFAULT_PIDLOG="logs/httpd.pid"
>      -D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
>      -D DEFAULT_ERRORLOG="logs/error_log"
>      -D AP_TYPES_CONFIG_FILE="conf/mime.types"
>      -D SERVER_CONFIG_FILE="conf/httpd.conf"
>
>     MPM event settings:
>     <IfModule mpm_event_module>
>         StartServers             5
>         MinSpareThreads         50
>         MaxSpareThreads        150
>         ThreadsPerChild         25
>         MaxRequestWorkers      200
>         MaxConnectionsPerChild 1000
>     </IfModule>
>