Workerman
phpsocket.io
Our great sponsors
Workerman | phpsocket.io | |
---|---|---|
6 | 3 | |
10,937 | 2,259 | |
- | - | |
8.6 | 5.4 | |
9 days ago | 20 days ago | |
PHP | PHP | |
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.
phpsocket.io
-
Building a custom online chat
You can run a node js with socket Io as a WebSocket service and then use Apache to proxy it, you could still use your HTML served by Apache with no problem. Also, there's an implementation of socket Io written in PHP, maybe it worth take a look https://github.com/walkor/phpsocket.io
- Integrating a websocket interfase into a REST API?
-
Server response to AJAX request, or a websocket approach. Do you have media to recommend to learn this ? Thank you
If neither works I do not have experience with the next. But a Socket.io type implementation could work. Could make a simple web API in node to handle just the events/web sockets. Can also look around to see if anyone has made any implementations of Socket.Io for php that would work with the Socket.Io JS client library. Here's one, don't know if it works or how well.
What are some alternatives?
Ratchet - Asynchronous WebSocket server
laravel-swoole - High performance HTTP server based on Swoole. Speed up your Laravel or Lumen applications.
React - Event-driven, non-blocking I/O with PHP.
comet - Modern PHP framework for building blazing fast REST APIs and microservices
RoadRunner - 🤯 High-performance PHP application server, process manager written in Go and powered with plugins
pusher-http-php - PHP library for interacting with the Pusher Channels HTTP API
LaravelS - LaravelS is an out-of-the-box adapter between Laravel/Lumen and Swoole.
Socket.io - Realtime application framework (Node.JS server)
Elephant.io - Ça trompe énormément
pusher-js - Pusher Javascript library
Amp - A non-blocking concurrency framework for PHP applications. 🐘
smtp-mailer - SMTP mail sending and scheduling service