pluf / scion
Nonblocking model to implement HTTP server
Requires
- pluf/di: ^7.0
- psr/http-server-handler: ~1.0
- psr/http-server-middleware: ~1.0
- psr/log: 1.1.x
Requires (Dev)
- phpunit/phpunit: ^9
- pluf/http2: ^7.0
This package is auto-updated.
Last update: 2024-12-10 10:53:41 UTC
README
A processing model to implement nonbloking server
It is verey common in HTTP
It merges Middlewares and View
Concepts
- Process
- Unit
- Dataflow
Process
Process is a php function
Unit
Unit is a list of process.
An unit add a login and flow to process.
Default flow is sequensial, so, all process executed sequensially.
Labeled process
You may label a process for an special goal.
Build in label:
- condition: jumbs to the end of unit if the return value is false.
Note: condition processes are not joined to the data flow, but handnle flows.
Dataflow
TO send data to the successor processes a container is used.
Each process can access resources which produced in previus process.
The backward data flow is generated by return values.
How to install
composer install pluf/scion
Quick start
Create a simple index.php
add the following code
<?php
$unitTracker = new UnitTracker([
function($a, $b){
return $a+$b;
}
]);
echo 'result is:' . $unitTracker->doProcess(['a'=>1, 'b'=>4]);
run the code
php index.php
The resullt will be:
$>php index.php
result is: 5
$>
Learn More
Learn more at these links:
Contributors
Please see CONTRIBUTING for details.
Code Contributors
This project exists thanks to all the people who contribute. Contribute.