HAProxy - routing oparty na adresie URL z równoważeniem obciążenia

Jestem nowy w HAProxy i mam pytanie o konfigurację HAProxy, która pomaga mi podjąć kluczową decyzję, podejmując właściwe podejście. To bardzo pomoże mi w podjęciu decyzji o architekturze.

Mam 3 aplikacje. Powiedzmyapp1, app2, app3.

Każda aplikacja jest zróżnicowana przez adresy URL w następujący sposób:

www.example.com/app1/123 -> app1
www.example.com/app2/123 -> app2
www.example.com/app3/123 -> app3

Mam zamiar mieć 2 wystąpienia każdej aplikacji w 2 różnych regionach:

Region 1 - app1, app2, app3
Region 2 - app1, app2, app3

Widzę 2 metody konfiguracji tego, ale nie jestem pewien, która jest tutaj najlepsza praktyka:

Metoda 1: Niech HAProxy1 najpierw rozróżni żądania za pomocą wzorców adresów URL. Żądania z HAProxy1 zostaną przekierowane do innego serwera HAProxy skonfigurowanego do indywidualnych aplikacji (w tym przypadku 3 serwery HAProxy) do równoważenia obciążenia.

Metoda 2: Miej jeden świetny serwer HAProxy, który robi oba tak, jak podano w metodzie 1. Oznacza to, że masz konfigurację, aby oddzielić żądania w zależności od adresu URL, a następnie przekazać każde żądanie za pomocą indywidualnego filtru, tak jak w przypadku każdej aplikacji do równoważenia obciążenia.

Nie jestem pewien, czy metoda 2 jest obsługiwana w haproxy. Wszelkie pomysły lub sugestie są bardzo mile widziane. Proszę o trochę światła.

questionAnswers(1)

yourAnswerToTheQuestion