php / php/php-src

Timeout when max-childrens reached.

Open
#11,260 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Feature SAPI: fpm
Dominant language
C
Stars
40.4k
Forks
8.2k
Avg merge
2d 15h
Merged PRs (30d)
103

Description

Description

Referring to:
https://bz.apache.org/bugzilla/show_bug.cgi?id=66603

It will be nice to set a timeout limit when connection will be terminated after trying to get free childrens of php-fpm. These limit should be smaller then max_execution_time or apache's timeouts because it will help with durability durring ddos attacks or with bugged apps. It specially important for shared servers, while one of app will reached max-childrens and there will be still incomming connections, so with waiting for childrens in infinity time or 300 seconds like apaches do it's to long and another limit's of server can be reached. These connections must be terminated alot faster, and timeout of http server cannot be smaller because of max_execution_time.

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 linked Bugzilla report about PHP-FPM waiting after max_children is reached, then locate the PHP-FPM connection and child-management entry points. Define the configurable timeout behavior and its failure cases before identifying the relevant tests; done means overloaded connections terminate within that limit without changing the existing execution or HTTP timeout behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
c, php
Domain
backend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.