parallel
async
parallel | async | |
---|---|---|
4 | 2 | |
745 | 172 | |
1.6% | 0.6% | |
7.6 | 4.1 | |
about 1 month ago | 5 months ago | |
PHP | PHP | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
parallel
- amphp/parallel v2.0.0 has been released
-
Is it possible that PHP will ever get async/await functions?
You can leverage https://github.com/amphp/parallel or https://github.com/spatie/async without changing the app much.
-
Concurrency framework amphp has been installed nearly 27 million times in the last three years but I rarely hear it used in production maybe reason is my location. Do you use it for production?What kind of projects?
it doesn't use fork to dispatch not anymore I suppose, when I last tried it that was the case. upon checking the code https://github.com/amphp/parallel/blob/master/lib/Worker/DefaultWorkerFactory.php they are now checking for various extensions like parallel or pthread and then defaulting to generators. so it uses generators now.
-
Differences among Asynchronous PHP libraries: ReactPHP | amphp | Parallel (pThreads) | Swoole | Fibers | Spatie
amphp (& amphp parallel ?)
async
-
Is it possible that PHP will ever get async/await functions?
Promises are a solution to asynchronicity in general. Promises are more of a specification, so anything claiming to implement Promises solves the same class of problem in the same way. Since php doesn't have language level wrappers for Await behavior it is going to look weird. Either you use something Object Oriented like Promises to handle the timing/async of your calls, or you use something functional like the pcntl functions to handle Process Control of multiple interdependent processes and the pipes/sockets between them. There are also separate Asnycronous libraries available that have a slightly different interface, but they probably just use promises in the backend. See https://github.com/reactphp/async and https://github.com/reactphp/promise for instance if you don't like curl.
-
What have fibers been used for so far?
ReactPHP uses Fibers through react/async starting from version 4 of the library.
What are some alternatives?
async-php-8-io-http - True asynchronous PHP I/O and HTTP without frameworks, extensions, or annoying code. Uses PHP Fibers introduced in PHP 8.1
async - Easily run code asynchronously
Swoole - 🚀 Coroutine-based concurrency library for PHP
React - Event-driven, non-blocking I/O with PHP.
ext-openswoole - Programmatic server for PHP with async IO, coroutines and fibers
coroutine - Cooperative multitasking using generators. The basics of coroutines, async and await!
asynchronous-php - List of resources for asynchronous programming in PHP
parallel - A succinct parallel concurrency API for PHP8
promises - Promises/A+ library for PHP with synchronous support
MadelineProto - Async PHP client API for the telegram MTProto protocol
framework-x - Framework X – the simple and fast micro framework for building reactive web applications that run anywhere.