haproxy ist eine "Load Balancer" nicht dienen Dateien oder dynamischen Inhalt nicht kennt. nginx ist ein Webserver, der viele interessante Dinge bietet. Wenn Sie nur Balance + HA ein drittes Web-Server laden müssen, dann ist Haproxy genug. Wenn Sie einen statischen Inhalt oder eine Logik im Routing der Anforderungen implementieren müssen, bevor Sie sie auf einem dritten Server beenden, benötigen Sie möglicherweise nginx.
Der Grund dafür, dass Sie haproxy + nginx auf demselben Host sehen, besteht darin, dass Sie einzelne nginx-Instanzen herunterfahren können, während haproxy weiterhin Anfragen von anderen Hosts bedient. Stellen Sie sich ein RR DNS, die eine unter Verwendung von Datensätzen:
myapp.com IN A 1.1.1.1
myapp.com IN A 1.1.1.2
wo 1.1.1.1 und 1.1.1.2 sind zwei Hosts mit haproxy + nginx konfiguriert Gleichgewicht zwischen ihnen zu laden. Aus irgendeinem Grund geht das Nginx von 1.1.1.1 aus. Die Browser, die zu 1.1.1.1 kommen, werden immer noch von haproxy bedient, das wiederum Daten aus 1.1.1.2s nginx erhält.
hoffe es hilft