ngxway is a high-performance, containerized and lightweight nginx gateway.
This gateway service is mainly implemented in Lua and, with built-in Nginx configuration and Linux parameter optimizations, it can achieve an average QPS of 50,000
even without any tuning, on an 8c16G
machine.
For more information on performance, you can refer to the detailed performance report. How was it generated? Please refer to the benchmark document if necessary.
Built on Docker and decoupled from the underlying Nginx configuration, this gateway eliminates 90% of the setup process. With just one command, you can automatically set up your own Nginx gateway.
Compared to complex gateway implementations, this project is much lighter. You can freely modify various configurations of the project, as well as modify and add various Lua scripts to improve the overall performance of ngxway for your business.
To reduce installation costs and facilitate quick setup, simply execute the following command.
# install
git clone https://github.com/WGrape/ngxway.git && cd ngxway && bash install.sh
# uninstall
cd ngxway && bash uninstall.sh
Execute the following command to start the ngxway server. If you can successfully open the 127.0.0.1:8090
page, it means that the server has started successfully.
bash bin/ngxway start
Execute the following command to stop the ngxway server.
bash bin/ngxway stop
Execute the following command to restart the ngxway server.
bash bin/ngxway restart
The logs of ngxway will be recorded in the local_volume_logs_dir
log directory defined in the ./ngxway.conf file, the default is /tmp /logs
directory.
Congratulations on successfully installing and starting the ngxway server! However, before you make any modifications to the project, it is not yet ready to provide gateway services for you. If you need to integrate, please refer to the Wiki.
In the process of using this project, if you encounter any problems, please refer to Q&A document.
Welcome your Issues and Pull Requests.