I am nearing the release of a fully async, Fiber-based PostgreSQL client for PHP. It features connection pooling and true server-side cancellation to stop database work immediately if a request is aborted.

Using Promise::all(), multiple queries run concurrently and 5 queries taking 1s each can finish in just ~1s total.

After this, I will be working on a DX-focused async query builder for this ecosystem. Open source and docs coming soon.

#PHP #PostgreSQL #Async #Backend #SoftwareEngineering

@rcalicdan will it support the bound argument system? the general school of thought is you do not use any db client but pdo anymore for the extra safety.
@bobmagicii yes it already support "?" positional paramater and ":name" name parameter,, plus native postgre binding using "$". The problem with pdo is it's blocking and there's no way to do asynchronous operation without resorting to threading or multiprocessing. This library actually uses ext-pgsql under the hood leveraging it's native non blockinh api