From fe3fb43aa2cc68931dead271cf3b3e2e4e8cb4ec Mon Sep 17 00:00:00 2001 From: David Dreschner Date: Wed, 29 Jul 2026 15:50:35 +0200 Subject: [PATCH] fix(MemcachedFactory): Enable TCP_NODELAY and adjust default timeouts to be reasonable Signed-off-by: David Dreschner --- lib/private/Memcache/Memcached.php | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/lib/private/Memcache/Memcached.php b/lib/private/Memcache/Memcached.php index 620013feda6af..147015d0406e1 100644 --- a/lib/private/Memcache/Memcached.php +++ b/lib/private/Memcache/Memcached.php @@ -25,11 +25,13 @@ public function __construct($prefix = '') { self::$cache = new \Memcached(); $defaultOptions = [ - \Memcached::OPT_CONNECT_TIMEOUT => 50, - \Memcached::OPT_RETRY_TIMEOUT => 50, - \Memcached::OPT_SEND_TIMEOUT => 50, - \Memcached::OPT_RECV_TIMEOUT => 50, - \Memcached::OPT_POLL_TIMEOUT => 50, + // Set connect and polling timeouts to 500 milliseconds + \Memcached::OPT_CONNECT_TIMEOUT => 500, + \Memcached::OPT_POLL_TIMEOUT => 500, + + // Set send and receive timeouts to 500000 microseconds + \Memcached::OPT_SEND_TIMEOUT => 500000, + \Memcached::OPT_RECV_TIMEOUT => 500000, // Enable compression \Memcached::OPT_COMPRESSION => true, @@ -39,6 +41,9 @@ public function __construct($prefix = '') { // Enable Binary Protocol \Memcached::OPT_BINARY_PROTOCOL => true, + + // Disable Nagle algorithm to speed up connection + \Memcached::OPT_TCP_NODELAY => true, ]; /** * By default enable igbinary serializer if available