JSON Machine
async
JSON Machine | async | |
---|---|---|
4 | 8 | |
1,019 | 2,537 | |
- | 0.6% | |
5.9 | 5.9 | |
6 days ago | 3 months ago | |
PHP | PHP | |
Apache License 2.0 | 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.
JSON Machine
-
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
-
Lazy JSON
Under the hood, it uses JSON Machine as a lexer and parser.
Seems like the issue is still open ! https://github.com/halaxa/json-machine/issues/36
-
Is any one actually using PHP generators in their projects?
Yes. We used it heavily when processing large amounts of data from huge API responses. I like how the whole processing chain can be built on top of it, for example using nikic/iter. Generators are also the heart of a low-memory JSON parsing library halaxa/json-machine, which I maintain, and many other similar projects.
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?
What are some alternatives?
msgpack.php - A pure PHP implementation of the MessagePack serialization format / msgpack.org[PHP]
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
Laminas Serializer - Serialize and deserialize PHP structures to a variety of representations
fork - A lightweight solution for running code concurrently in PHP
etl - PHP - ETL (Extract Transform Load) data processing library
Swoole - 🚀 Coroutine-based concurrency library for PHP
php-caching-generator - A rewindable PHP Generator class that caches its generated values.
parallel - An advanced parallelization library for PHP, enabling efficient multitasking, optimizing resource use, and application responsiveness through multiple CPU threads.
collection - The Museum of Modern Art (MoMA) collection data
React - Event-driven, non-blocking I/O with PHP.
collection - A (memory) friendly, easy, lazy and modular collection class.
coroutine - Cooperative multitasking using generators. The basics of coroutines, async and await!