Workerman
fork
Workerman | fork | |
---|---|---|
6 | 2 | |
10,958 | 799 | |
- | 4.4% | |
8.3 | 6.3 | |
24 days ago | 3 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.
Workerman
-
Scaling to ~15K requests per second with Java – Part 1
I remember a consulting gig where they were pushing 50k requests per second with PHP in a 2018 laptop by using this framework https://github.com/walkor/workerman
In a real application, with database connection pooling and auth sessions, it went down to 15k requests/s.
And that was PHP7. PHP8 introduced JIT so it's probably significantly faster these days and hopefully fully typed.
-
Build Warehouse and Store Management System - Pt. 4 - Final
The code above is an example of creating a websocket server from the usage example on the workerman/workerman page on github.
- Integrating a websocket interfase into a REST API?
-
Exotic/unknown frameworks?
Workerman
- Running PHP code in parallel, the easy way
-
Asynchronous PHP — Multiprocessing, Multithreading & Coroutines - Diving Laravel
That's cute. I managed to get 100k requests per second on a single i7 CPU this week using standard blocking code with Workerman. Zero added cognitive load. It also does DB pooling, workers, sockets and consumes relatively lower memory than other solutions.
fork
-
Slow external API calls made in a foreach - How to optimize?
The only way you could improve this is by using something like Spatie Fork to run the API requests in parallel but doing that is honestly going to be a headache.
-
Running PHP code in parallel, the easy way
That Spatie/Fork looks like just what I want: simple and straight-forward. Too bad it's PHP 8, as I don't have PHP 8 anywhere in production.
What are some alternatives?
Ratchet - Asynchronous WebSocket server
async - Easily run code asynchronously
React - Event-driven, non-blocking I/O with PHP.
RoadRunner - 🤯 High-performance PHP application server, process manager written in Go and powered with plugins
MultiProcessor - Easy usable class for very fast and memory efficient scripts, processing lots of data by utilizing the power of pcntl_fork()
LaravelS - LaravelS is an out-of-the-box adapter between Laravel/Lumen and Swoole.
FrameworkBenchmarks - Source for the TechEmpower Framework Benchmarks project
Elephant.io - Ça trompe énormément
fork - A lightweight solution for running code concurrently in PHP
Amp - A non-blocking concurrency framework for PHP applications. 🐘