This article has multiple issues. Please help improve it or discuss these issues on the talk page . (Learn how and when to remove these template messages)
|
Original author(s) | Anton Titov |
---|---|
Initial release | January 2018 |
Stable release | 2.10.4 / June 10, 2022 |
Repository | |
Written in | Golang, PHP |
Type | Application server |
License | MIT License |
Website | roadrunner |
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 for users. It is often used in conjunction with frameworks like Symfony, Laravel, and others to enhance the performance and responsiveness of PHP web applications. [1]
Development on RoadRunner began in 2017 by Anton Titov and was released in 2018 on GitHub, under an MIT license. "Introducing RoadRunner: A High-Performance PHP Application Server". 19 November 2018. By the middle of 2018, we polished the approach, published it to GitHub under an MIT license, and called it RoadRunner which described its incredible speed and efficiency.
RoadRunner was 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.
RoadRunner is a free open-source software under an MIT license. It can be downloaded and installed as a package from the project page or from GitHub.
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 |
PHP is a general-purpose scripting language geared towards web development. It was originally created by Danish-Canadian programmer Rasmus Lerdorf in 1993 and released in 1995. The PHP reference implementation is now produced by the PHP Group. PHP was originally an abbreviation of Personal Home Page, but it now stands for the recursive initialism PHP: Hypertext Preprocessor.
An application server is a server that hosts applications or software that delivers a business application through a communication protocol. For a typical web application, the application server sits behind the web servers.
The Zend Engine is a compiler and runtime environment for the PHP scripting language and consists of the Zend Virtual Machine, which is composed of the Zend Compiler and the Zend Executor, that compiles and executes the PHP code. It was originally developed by Andi Gutmans and Zeev Suraski while they were students at the Technion – Israel Institute of Technology. They later founded a company called Zend Technologies in Ramat Gan, Israel. The name Zend is a combination of their forenames, Zeev and Andi.
Zend Studio is a commercial, proprietary integrated development environment (IDE) for PHP developed by Zend Technologies, based on the PHP Development Tools (PDT) plugin for the Eclipse platform.
Symfony is a free and open-source PHP web application framework and a set of reusable PHP component libraries. It was published as free software on October 18, 2005, and released under the MIT License.
Laminas Project is an open source, object-oriented web application framework implemented in PHP 7 and licensed under the New BSD License. The framework is basically a collection of professional PHP-based packages. The framework uses various packages by the use of Composer as part of its package dependency managers; some of them are PHPUnit for testing all packages, Travis CI for continuous Integration Services. Laminas provides to users a support of the model–view–controller (MVC) in combination with Front Controller solution. MVC implementation in Laminas has five main areas. The router and dispatcher functions to decide which controller to run based on data from URL, and controller functions in combination with the model and view to develop and create the final web page.
This is a comparison of notable web frameworks, software used to build and deploy web applications.
Zend Server is a complete and certified PHP distribution stack originally developed by Zend Technologies intended for high performance and scalable use cases.
Slowloris is a type of denial of service attack tool which allows a single machine to take down another machine's web server with minimal bandwidth and side effects on unrelated services and ports.
HipHop for PHP (HPHPc) is a discontinued PHP transpiler created by Facebook. By using HPHPc as a source-to-source compiler, PHP code is translated into C++, compiled into a binary and run as an executable, as opposed to the PHP's usual execution path of PHP code being transformed into opcodes and interpreted. HPHPc consists mainly of C++, C and PHP source codes, and it is free and open-source software distributed under the PHP License.
Cherokee is an open-source cross-platform web server that runs on Linux, BSD variants, Solaris, OS X, and Windows. It is a lightweight, high-performance web server/reverse proxy licensed under the GNU General Public License. Its goal is to be fast and fully functional yet still light. Major features of Cherokee include a graphical administration interface named cherokee-admin, and a modular light-weight design.
Laravel is a free and open-source PHP web framework, created by Taylor Otwell and intended for the development of web applications following the model–view–controller (MVC) architectural pattern and based on Symfony. Some of the features of Laravel are a modular packaging system with a dedicated dependency manager, different ways for accessing relational databases, utilities that aid in application deployment and maintenance, and its orientation toward syntactic sugar.
appserver.io is an application server for PHP-based web environments. The project consists of middleware which delivers classical PHP web applications and provides additional services.
Phalcon is a PHP web framework based on the model–view–controller (MVC) pattern. Originally released in 2012, it is an open-source framework licensed under the terms of the BSD License.
Movim is a distributed social network built on top of XMPP, a popular open standards communication protocol. Movim is a free and open source software licensed under the AGPL-3.0-or-later license. It can be accessed using existing XMPP clients and Jabber accounts.
Blackfire Profiler is a tool that instruments PHP applications to gather data about consumed server resources like memory, CPU time, and I/O operations. Blackfire is also a SaaS service to visualize any callgrind-compatible profile.
October is a self-hosted content management system (CMS) based on the PHP programming language and Laravel web application framework. It supports MariaDB, MySQL, PostgreSQL, SQLite and SQL Server for the database back end and uses a flat file database for the front end structure. The October CMS covers a range of capabilities such as users, permissions, themes, and plugins, and is seen as a simpler alternative to WordPress.
Enduro/X is an open-source middleware platform for distributed transaction processing. It is built on proven APIs such as X/Open group's XATMI and XA. The platform is designed for building real-time microservices based applications with a clusterization option. Enduro/X functions as an extended drop-in replacement for Oracle Tuxedo. The platform uses in-memory POSIX Kernel queues which insures high interprocess communication throughput.