Commit f2a4cfc
committed
docs: measure FRANKENPHP_RESET_KERNEL instead of guessing at it
Changes
- Record the three-way measurement on `/admin` in the Caddyfile, README and
changelog
- Say what cloning the kernel actually does, and stop implying the reset erases
worker mode's benefit
Why
The comment claimed the reset costs "a boot per request", which is true —
`AbstractKernel::__clone()` nulls the container and clears `booted`, so the next
`handle()` runs `initializeBundles()` and instantiates the compiled container
again. But it was asserted rather than measured, and the conclusion drawn from it
was wrong.
Measured in prod, 40 seconds at 20 concurrent on `/admin`: 1319 requests per
second and a 9.0 ms median with no worker, 1494 and 4.3 ms with one, 1395 and
6.1 ms with one plus the reset. The reset keeps roughly half the gain and still
beats no worker on both numbers, because the PHP runtime, OPcache and autoloader
stay warm across requests even when the kernel does not.
That makes it a reasonable first worker-mode configuration to deploy rather than
only something to compare against. Also notes that a boot is not a recompile,
which the old wording invited readers to assume.1 parent cb49602 commit f2a4cfc
4 files changed
Lines changed: 51 additions & 25 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
102 | 102 | | |
103 | 103 | | |
104 | 104 | | |
105 | | - | |
106 | | - | |
107 | | - | |
| 105 | + | |
108 | 106 | | |
109 | | - | |
110 | | - | |
111 | | - | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
112 | 116 | | |
113 | 117 | | |
114 | 118 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
63 | 63 | | |
64 | 64 | | |
65 | 65 | | |
66 | | - | |
67 | | - | |
68 | | - | |
69 | | - | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
70 | 71 | | |
71 | 72 | | |
72 | 73 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
219 | 219 | | |
220 | 220 | | |
221 | 221 | | |
222 | | - | |
223 | | - | |
224 | | - | |
225 | | - | |
226 | | - | |
227 | | - | |
228 | | - | |
229 | | - | |
| 222 | + | |
| 223 | + | |
| 224 | + | |
| 225 | + | |
| 226 | + | |
| 227 | + | |
| 228 | + | |
| 229 | + | |
| 230 | + | |
| 231 | + | |
| 232 | + | |
| 233 | + | |
| 234 | + | |
| 235 | + | |
| 236 | + | |
| 237 | + | |
| 238 | + | |
| 239 | + | |
| 240 | + | |
230 | 241 | | |
231 | 242 | | |
232 | 243 | | |
| |||
257 | 268 | | |
258 | 269 | | |
259 | 270 | | |
260 | | - | |
261 | | - | |
262 | | - | |
263 | | - | |
| 271 | + | |
| 272 | + | |
| 273 | + | |
| 274 | + | |
| 275 | + | |
| 276 | + | |
| 277 | + | |
| 278 | + | |
| 279 | + | |
| 280 | + | |
| 281 | + | |
| 282 | + | |
264 | 283 | | |
265 | 284 | | |
266 | 285 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
134 | 134 | | |
135 | 135 | | |
136 | 136 | | |
137 | | - | |
138 | | - | |
139 | | - | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
140 | 142 | | |
141 | 143 | | |
142 | 144 | | |
| |||
0 commit comments