Commit e6be354
feat: add configurable connect and read timeouts to Redis connections
Queue Redis connections previously used PHP's default timeout of 0
(blocking indefinitely). When Redis becomes unresponsive due to
contention (e.g. Dragonfly TxQueue saturation), worker BRPOP calls
would hang until the OS TCP timeout (21-127s), causing fatal
"read error on connection" crashes and cascading restarts.
Adds `connectTimeout` and `readTimeout` parameters (default 5s) to
both `Redis` and `RedisCluster` connection classes so callers can
configure fail-fast behaviour.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>1 parent aa80ffe commit e6be354
2 files changed
Lines changed: 13 additions & 4 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
10 | 10 | | |
11 | 11 | | |
12 | 12 | | |
| 13 | + | |
| 14 | + | |
13 | 15 | | |
14 | 16 | | |
15 | | - | |
| 17 | + | |
16 | 18 | | |
17 | 19 | | |
18 | 20 | | |
19 | 21 | | |
20 | 22 | | |
| 23 | + | |
| 24 | + | |
21 | 25 | | |
22 | 26 | | |
23 | 27 | | |
| |||
186 | 190 | | |
187 | 191 | | |
188 | 192 | | |
189 | | - | |
| 193 | + | |
| 194 | + | |
190 | 195 | | |
191 | 196 | | |
192 | 197 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
| 10 | + | |
| 11 | + | |
10 | 12 | | |
11 | 13 | | |
12 | | - | |
| 14 | + | |
13 | 15 | | |
14 | 16 | | |
| 17 | + | |
| 18 | + | |
15 | 19 | | |
16 | 20 | | |
17 | 21 | | |
| |||
181 | 185 | | |
182 | 186 | | |
183 | 187 | | |
184 | | - | |
| 188 | + | |
185 | 189 | | |
186 | 190 | | |
187 | 191 | | |
0 commit comments