Complete Load Balancing solution

I have a Laravel web application based on MariaDB, PHP, Nginx, and ubuntu 20.04. To ensure that my website is always online under heavy traffic, I decided to establish load balancing between my servers. I'm using the Galera cluster for the database and Rsync for the file synchronization. But I don't want to have only one Nginx reverse_proxy server to distribute traffic between my servers. Because it's risky since if the reverse proxy server goes down, it will take down the whole website.

So here is the question, How can I distribute the traffic between two Nginx reverse proxies? The two Nginx reverse proxy servers should point to my website domain


You put two haproxy servers in front of the nginx servers, of which only one handles the traffic, the other one is kept in standby by keepalived.