RoadRunner (Application server)
RoadRunner is an open-source application server, load-balancer, and process manager written in Golang (Go) and implemented by PHP 7. It is used in rapid application development to speed up the performance of large web applications.
Original author(s) | Anton Titov |
---|---|
Initial release | January 2018; 2 years ago |
Stable release | 1.0.0 / June 1, 2018; 17 months ago
|
Repository | https://github.com/spiral/roadrunner |
Written in | Golang, PHP |
Type | Application server |
License | MIT License |
Website | https://roadrunner.dev/ |
History
Development on RoadRunner began in 2017 by Anton Titov. RoadRunner was initially created to handle the peak loads of a large-scale PHP application developed by Spiral Scout. The end application was experiencing anomaly peaks in very short spurts of time which did not allow classic load balancing mechanisms to activate.
Roadrunner uses multi-threading to keep a PHP application in memory between requests, allowing it to eliminate boot loading and code loading processes and reduce latency. Improved RPC communication between the PHP application and its server processes gives Roadrunner the ability to offload some of the heavy communication from PHP to Go.
Product Features
RoadRunner is a production-ready runtime environment for PHP development.
Features:
- Production-ready PSR-7 compatible HTTP, HTTP2, FastCGI server
- No external PHP dependencies (64bit version required)
- Frontend agnostic (Queue, PSR-7, GRPC, etc.)
- Background job processing (AMQP, Amazon SQS, Beanstalk and memory)
- GRPC server and clients
- Pub/Sub and Websockets broadcasting
- Integrated metrics server (Prometheus)
- Integrations with Symfony, Laravel, Slim, CakePHP, Zend Expressive, Spiral
Licensing
RoadRunner is open-source software under an MIT license. It can be downloaded and installed as a package from the project page or from GitHub. It is completely free of charge.
External links
- RoadRunner official website
- PHP to Golang IPC bridge
- GRPC server
- Message queue
Versions
Version | Release Date |
---|---|
v0.9.0 | 28 January 2018 |
v1.0.0 | 13 June 2018 |
v1.1.1 | 6 July 2018 |
v1.2.8 | 26 December 2018 |
v1.3.7 | 21 March 2019 |
v1.4.8 | 6 September 2019 |
v1.5.1 | 10 October 2019 |
v1.6.0 | 11 February 2020 |
v1.7.0 | 23 March 2020 |
v1.8.0 | 5 May 2020 |
References
- New Dedicated Application Server Revs PHP to Peak Performance - DZone Performance
- RoadRunner, the PHP Application Server written in Golang
- Roadrunner & Zend Expressive & Cycle ORM. Not allow to php to die.
- Roadrunner: a PHP application server
- RoadRunner: PHP is not created to die, or Golang to the rescue
- RoadRunner: PHP не создан, чтобы умирать, или Golang спешит на помощь
- spiral/roadrunner - Packagist
- RoadRunner – High-Speed PHP Applications
- Roadrunner – High-performance PHP application server, load-balancer, and process manager written in Golang | PHPnews.io