[php-src] Issue #11723: FPM pool manager
| From: | bukka | Date: | Mon, 17 Jul 2023 10:18:29 +0000 |
| Subject: | [php-src] Issue #11723: FPM pool manager | ||
| Groups: | php.bugs | ||
| Request: | Send a blank email to php-bugs+get-244980@lists.php.net to get a copy of this message | ||
Issue: https://github.com/php/php-src/issues/11723
Author: bukka
### Description
FPM allows creating multiple pools which except other things provides some sort of separation
between processes. There is still however lots of shared resources because MINIT happens in master
process which is common for all pools. That's problematic for extension like opcache that
creates shared memory between all pools. This gets even more problematic if pools have different
users / groups configured due to potential permission errors when accessing shared resources.
The proposed solution for this problem is to create extra layer between master and children
processes. It would be a pool manager process that would handle creation of children, logs, MINIT
and other things currently handled by master process. Master process would then become very thin and
just supervise pool manager(s) as well as some other common things (e.g. loading configuration).
This would be also beneficial for improving graceful reload and extending of status and access
logging for resource information related to the whole pool like for example [request for adding
utime and stime](https://bugs.php.net/bug.php?id=62951).