swooletw/laravel-swoole

This package is abandoned and no longer maintained. No replacement package was suggested.

High performance HTTP server based on Swoole. Speed up your Laravel and Lumen applications.

Maintainers

👁 albertcht

Package info

github.com/swooletw/laravel-swoole

pkg:composer/swooletw/laravel-swoole

Statistics

Installs: 813 246

Dependents: 10

Suggesters: 0

Stars: 4 047

Open Issues: 40

v2.13.0 2023-04-13 18:00 UTC

Requires

Suggests

None

Provides

None

Conflicts

None

Replaces

None

MIT 55ff29fd68b404e4820851e0998443364c18f0f1

  • Albert Chen <albert.woop@unisharp.com>
  • Huang Yi <coodeer.woop@163.com>

performancehttpserverlaravelswoolelumen


README

Warning

This package is no longer maintained, we strongly recommend using Laravel's official laravel/octane as an alternative.

If you need coroutine support, consider trying Hypervel for higher performance (This is a Laravel-style coroutine framework.)

Laravel-Swoole

👁 php-badge
👁 packagist-badge
👁 Total Downloads
👁 Scrutinizer Code Quality
👁 travis-badge

This package provides a high performance HTTP server to speed up your Laravel/Lumen application based on Swoole.

Version Compatibility

PHP Laravel Lumen Swoole
>=7.2 >=5.5 >=5.5 >=4.3.1

Features

  • Run Laravel/Lumen application on top of Swoole.
  • Outstanding performance boosting up to 5x faster.
  • Sandbox mode to isolate app container.
  • Support running websocket server in Laravel.
  • Support Socket.io protocol.
  • Support Swoole table for cross-process data sharing.

Documentation

Please see Wiki

Benchmark

Test with clean Lumen 5.6, using DigitalOcean 3 CPUs / 1 GB Memory / PHP 7.2 / Ubuntu 16.04.4 x64

Benchmarking Tool: wrk

wrk -t4 -c100 http://your.app

Nginx with FPM

wrk -t4 -c10 http://lumen-swoole.local

Running 10s test @ http://lumen-swoole.local
 4 threads and 10 connections
 Thread Stats Avg Stdev Max +/- Stdev
 Latency 6.41ms 1.56ms 19.71ms 71.32%
 Req/Sec 312.99 28.71 373.00 72.00%
 12469 requests in 10.01s, 3.14MB read
Requests/sec: 1245.79
Transfer/sec: 321.12KB

Swoole HTTP Server

wrk -t4 -c10 http://lumen-swoole.local:1215

Running 10s test @ http://lumen-swoole.local:1215
 4 threads and 10 connections
 Thread Stats Avg Stdev Max +/- Stdev
 Latency 2.39ms 4.88ms 105.21ms 94.55%
 Req/Sec 1.26k 197.13 1.85k 68.75%
 50248 requests in 10.02s, 10.88MB read
Requests/sec: 5016.94
Transfer/sec: 1.09MB

Q&A

The common questions are collected in Q&A. You can go check if your question is listed in the document.

Issues and Support

Please read Issues Guideline before you submit an issue, thanks.

Bugs and feature request are tracked on GitHub.

Credits

Huang-Yi, 👁 Image

Alternatives

License

The Laravel-Swoole package is open-sourced software licensed under the MIT license.

Support on Beerpay

Hey dude! Help me out for a couple of 🍻!

👁 Beerpay
👁 Beerpay