Remix.run Logo
pier25 2 days ago

I'm surprised at how well php is doing here. I'm guessing they are using fibers?

alganet 2 days ago | parent [-]

It uses reactphp event-loop library:

https://github.com/reactphp/event-loop

That library can use either select, libuv, libev or libevent if I'm not mistaken. Fibers are not used at this point, although other libraries have explored the idea (revoltphp).

If we're assuming the paper author installed a typical PHP, then it's using select for async I/O. It's the slowest implementation of the event loop. Using something like swoole would extract even more performance out of PHP for async io scenarios.