async
event-loop
async | event-loop | |
---|---|---|
8 | 4 | |
2,537 | 1,194 | |
0.6% | 0.3% | |
5.9 | 5.3 | |
3 months ago | 2 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.
async
-
PHP in 2023 - stitcher.io
I really wanna get into writing more asynchronous PHP but having to switch to a whole different web server and execution mode is a major stumbling block. The only library (that I know of) that allows asynchronous code in traditional PHP environment is this one by Spatie.
-
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.
-
Handling big API request (2.5gb) without timeout
To handle this problem i've used "https://github.com/halaxa/json-machine" to decrease the memory usage and "https://github.com/spatie/async" to decrease the take taken for the "update process" to complete
-
I Avoid Async/Await
It drove me crazy too, until I needed to use Puppeteer which requires you to write async/await (there are Puppeteer implementations in other languages, but they all seem to make compromises I didn't want). Generally speaking, async/await allows you to write code that looks and feels serial. Perhaps try using one of the async libraries for PHP to wrap your mind around the concept of async/await (like https://github.com/spatie/async)
-
Speeding up SSL checking process
Try using spatie's async package and run a chunk of 10 tests in each batch, if that works it might cut your waiting time by quite a lot.
-
Differences among Asynchronous PHP libraries: ReactPHP | amphp | Parallel (pThreads) | Swoole | Fibers | Spatie
Spatie
- What is best and easiest library (packagist) for async process in PHP?
- A pattern for promises in Laravel?
event-loop
-
Getting started with asynchronous PHP using ReactPHP
ReactPHP has various components, such as the event loop, promise, and streams. When you install ReactPHP, these components and a few more are installed, so you don’t have to install the separately.
-
Where does PHP being single threaded affect performance and can anything be done to make it better?
For that things PHP usually uses external help in form of queues in Redis or other DBs. And then one process which spawn other ones. Did you heard about Event Loop, pcntl_fork() and php-cli from crontab? That solves the whole problem in the world before Fibers.
-
Does PHP really not support asynchronous calls natively?
It can run without an extension, but for best performance, one of libuv, libev or libevent should be installed to accelerate performance, otherwise it uses stream_select() which doesn't require an extension but has worse performance. See https://github.com/reactphp/event-loop#loop-implementations
-
What is best and easiest library (packagist) for async process in PHP?
which package? is it reactphp/event-loop?
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
react-fiber - ReactPHP + ext-fiber
fork - A lightweight solution for running code concurrently in PHP
React - Event-driven, non-blocking I/O with PHP.
Swoole - 🚀 Coroutine-based concurrency library for PHP
ReactPHP Promises Testing - PHPUnit assertions for testing ReactPHP promises
parallel - An advanced parallelization library for PHP, enabling efficient multitasking, optimizing resource use, and application responsiveness through multiple CPU threads.
PHP-watcher - Monitor for any changes in your php application and automatically restart it (suitable for async apps).
excelize - Go language library for reading and writing Microsoft Excel™ (XLAM / XLSM / XLSX / XLTM / XLTX) spreadsheets
coroutine - Cooperative multitasking using generators. The basics of coroutines, async and await!
socket - Async, streaming plaintext TCP/IP and secure TLS socket server and client connections for ReactPHP.