Welcome to Burner!

Burner is a out-of-box library for CodeIgniter that supports RoadRunner , Workerman ,and OpenSwoole . You only need to open some php extensions to greatly accelerate your CodeIgniter4 application, making it able to withstand higher loads and handle more connections at the same time.-

System Requirements

The system requirements for Burner are different depending on the driver you choose.

Basic Requirements

  1. CodeIgniter Framework 4.4.0 or later
  2. Composer
  3. PHP8^

OpenSwoole

  1. OpenSwoole 22^ or later, you can refer to the official document OpenSwoole Prerequisites

We also recommend you to read: How to install OpenSwoole

Note

OpenSwoole does not support native execution in the Windows environment. However, you can use OpenSwoole via WSL or Docker.

Workerman

  1. Enable php-pcntl extension
  2. Enable php-posix extension
  3. Not required, but we recommend you to install php-event extension to get better performance

Note

Workerman does not support Windows environment.But you can use Workerman via WSL or Docker.

RoadRunner

  1. Enable php-curl extension
  2. Enable php-zip extension
  3. Enable php-sockets extension

Architecture

Burner is composed of several libraries, including:

  • burner-core is a simple PSR7 and CodeIgniter4 converter, and also includes some CodeIgniter4 commands; because Codeigniter4 does not implement the full HTTP message interface, this library focuses on the synchronization of the PSR-7 interface and the Codeigniter4 HTTP interface.

  • burner-OpenSwoole uses this driver, your CodeIngiter4 will be able to run through OpenSwoole

  • burner-Workerman uses this driver, your CodeIngiter4 will be able to run through Workerman. In some test scenarios, Workerman has shown excellent performance advantages.

  • burner-RoadRunner uses this driver, your CodeIngiter4 will be able to run through RoadRunner. Unlike other Drivers, it has a PHP server implemented in Go, in addition to the framework's own support, the official also provides many convenient plug-ins.

You can choose the most suitable driver for your project, and there is no absolute good or bad. It depends on the project requirements and the familiarity of the developer with the technology.

With the support of Burner, your project will be able to freely switch between different high-performance PHP servers, or run on two different servers at the same time on different ports. For example, through RoadRunner to handle general HTTP requests, while using OpenSwoole to handle WebSocket requests.

Are you ready to explore Burner?

Quick Start

Powered by Doctave