php / php/php-src

FPM support for S6 service startup notifications

Open
#10,316 0 comments 4 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Feature SAPI: fpm
Dominant language
C
Stars
40.4k
Forks
8.1k
Avg merge
2d 13h
Merged PRs (30d)
96

Description

Description

S6 and specifically its overlay is a popular set of programs for process supervision. It is very light and often used to run PHP-FPM with other services inside a single container (e.g. Docker). Currently to notify it about service startup, it needs to use s6-notifyoncheck program that runs as FPM master subprocess that polls FPM. It's not optimal and it has got its own issue described in #10315. S6 offers its own notification mechanism that would be better.

The idea is that FPM would receive the descriptor number when started and when it's ready it would write new line to that descriptor which would notify S6 that it's started.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reading the S6 notifywhenup documentation and the linked s6-overlay context, then compare them with the existing FPM startup behavior. Review issue #10315 for the current polling approach. Done means FPM can receive a descriptor at startup and write a readiness line when it is ready, with the behavior verified by relevant FPM tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
c, php
Domain
backend, devops
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.