EX4 Firmware Release 1.02.36

ckc123 - This simply shows that you have FIVE (not four) child processes running and NOT that there are 4 cores. AndTonyPh12345 is right, EX4’s (and EX2’s) have single core CPU…not dual or quad cores :slight_smile:

Why you have 5 child processes is because there are certain settings stored in /etc/php//php-fpm.conf - pasting the pertinent ones from my EX2. Yes, mine’s EX2 but I am confident you have the same settings on the EX4, if not the same exact vaues for these settings. Please note that even if you edit this file, any changes will be wiped out on reboot.

Of importance is the last setting - the duration before these processes are auto-killed…it appears that this setting is not set but is commented out, hence these idle child-processes are not auto-killed even after it’s been idle for sometime.

Minutes ago I tried to access the dashboard from both my laptop and simultaneously from my iPad and now I have 3 processes. So it’s not unusual under the default settings above for an EX2/EX4 to have up to 5 lingering idle child processes…but I am not sure if that is good or not.

Finally, based on the below settings I am doubtful that you get 5 of these child processes on reboot. There should only be one child process after reboot. Unless EX4 has different default value for that settings than EX2.

------------------------snippet start---------------------------

; Choose how the process manager will control the number of child processes.
; Possible Values:
;     static - a fixed number (pm.max_children) of child processes;
;     dynamic - the number of child processes are set dynamically based on the
;                        following directives. With this process management, there will be
;                        always at least 1 children.
;                        pm.max_children - the maximum number of children that can
;                                                           be alive at the same time.
;                        pm.start_servers - the number of children created on startup.
;                        pm.min_spare_servers - the minimum number of children in ‘idle’
;                                                                      state (waiting to process). If the number
;                                                                      of ‘idle’ processes is less than this
;                                                                      number then some children will be created.
;                        pm.max_spare_servers - the maximum number of children in ‘idle’
;                                                                       state (waiting to process). If the number
;                                                                       of ‘idle’ processes is greater than this
;                                                                       number then some children will be killed.
;    ondemand - no children are created at startup. Children will be forked when
;                           new requests will connect. The following parameter are used:
;                           pm.max_children - the maximum number of children that
;                                                              can be alive at the same time.
;                           pm.process_idle_timeout - The number of seconds after which
;                                                                              an idle process will be killed.
;  Note: This value is mandatory.
pm = dynamic

; The number of child processes to be created when pm is set to ‘static’ and the
; maximum number of child processes when pm is set to ‘dynamic’ or ‘ondemand’.
; This value sets the limit on the number of simultaneous requests that will be
; served. Equivalent to the ApacheMaxClients directive with mpm_prefork.
; Equivalent to the PHP_FCGI_CHILDREN environment variable in the original PHP
; CGI. The below defaults are based on a server without much resources. Don’t
; forget to tweak pm.* to fit your needs.
; Note: Used when pm is set to ‘static’, ‘dynamic’ or ‘ondemand’
; Note: This value is mandatory.
pm.max_children = 5

; The number of child processes created on startup.
; Note: Used only when pm is set to ‘dynamic’
; Default Value: min_spare_servers + (max_spare_servers - min_spare_servers) / 2
pm.start_servers = 1

; The desired minimum number of idle server processes.
; Note: Used only when pm is set to ‘dynamic’
; Note: Mandatory when pm is set to ‘dynamic’
pm.min_spare_servers = 1

; The desired maximum number of idle server processes.
; Note: Used only when pm is set to ‘dynamic’
; Note: Mandatory when pm is set to ‘dynamic’
pm.max_spare_servers = 2

; The number of seconds after which an idle process will be killed.
; Note: Used only when pm is set to ‘ondemand’
; Default Value: 10s
;pm.process_idle_timeout = 10s;

----------------------snippet end-------------------------