Closed fbriois closed 4 months ago
The new PHP client works in tandem with the connection manager to pool connections for people who heavily use php-fpm in production and other comparable solutions. As a result, it needs to do IPC and that adds to the latency. While the client is slower, it still does its work reliably in under a millisecond. We don't expect that to impede real world applications. Does that affect yours?
Hi @khaf,
Actually we get a lot of timeout with the older client (too many request in the same time I presume) and we decide to upgrade php-fpm. So we are looking very closely at this client as aerospike is heavily used in production.
I think this client is fast enough to manage all our traffic, but we still need to know if it is more reliable.
Thanks for your answer.
Hi,
When I run a benchmark, it appears the php-client is more than 3 time slower than the legacy client.
I am using php8.2 with php-client v1.0.2 and on other hand php7.3 with the legacy client https://github.com/aerospike-community/aerospike-client-php.
Clients and server are also in the same server and I use this unmodified configuration for the connection manager: https://github.com/aerospike/php-client/blob/main/aerospike-connection-manager/asld.toml
I use the same configuration between both php, so the main difference is the php version, the aerospike client and the connector (which is written in Rust vs C, I presume).
Here you can find a benchmark result (based from https://github.com/aerospike/php-client/tree/main/benchmark):
And here you can find the benchmark result (from https://github.com/aerospike-community/aerospike-client-php/tree/master/examples/performance):
So ~ 182μs to read operation and ~ 214μs to write operation