mslwk / module-reactphp-playground
ReactPHP playground module for Magento 2
Installs: 8
Dependents: 0
Suggesters: 0
Security: 0
Stars: 12
Watchers: 3
Forks: 1
Open Issues: 0
Type:magento2-module
Requires
- php: ^7.1.0
- magento/framework: >=101.0.0
- magento/module-store: >=100.0.0
- mslwk/php-typesafe-array: ^1.0
- react/child-process: ^0.5.2
- react/http-client: ^0.5.9
Requires (Dev)
- phpunit/phpunit: >=7.0.0
This package is auto-updated.
Last update: 2024-11-13 01:10:42 UTC
README
Magento 2 ReactPHP Playground
Magento 2 module which showcases how to run resource-heavy processes asynchronously using multiple threads with ReactPHP ChildProcess and HttpClient libraries.
Prerequisites
- Magento 2.2 or higher
- PHP 7.1
Installing
You can install the module by downloading a .zip file and unpacking it inside
app/code/MSlwk/ReactPhpPlayground
directory inside your Magento
or via Composer (recommended).
To install the module via Composer simply run
composer require mslwk/module-reactphp-playground
Than enable the module by running these command in the root of your Magento installation
bin/magento module:enable MSlwk_ReactPhpPlayground
bin/magento setup:upgrade
Usage
Non-Magento scripts
The module contains PHP CLI scripts which don't require Magento. They present the potential differences between the same calculations run on 1, 2 and 4 threads.
- To run HttpClient example start the
Standalone/bin/http
script - To run ChildProcess example start the
Standalone/bin/childprocess
script
Magento commands
The module contains 2 commands available via bin/magento
. You can choose the number of threads to use.
- To run HttpClient example use
bin/magento mslwk:webapi-reporting-start <<number_of_threads>>
- To run ChildProcess example use
bin/magento mslwk:cli-reporting-start <<number_of_threads>>
Authors
- Maciej Sławik - https://github.com/maciejslawik
License
This project is licensed under the MIT License - see the LICENSE file for details