Prawdopodobnie nie chcesz tego robić. Co naprawdę próbujesz zrobić?
Michael Hampton
1
Naprawdę tego potrzebuję
Agus,
2
Mam przypadek użycia. Mam klienta przesyłającego dane do moich serwerów, z których korzysta nasza infrastruktura produkcyjna. Potrzebuję tych samych danych przekazywanych na moje serwery deweloperów w celu dalszego rozwoju. Klient może wysyłać dane tylko do 1 punktu końcowego. Nie pytaj dlaczego, nie wiem.
Koleś
1
Och, muszę zduplikować ruch, mam na myśli, że ruch będzie przetwarzany przez A, ale B odbierze proces offline
Agus
2
Znalazłem inną wersję tego pytania z odpowiedzią, która pomogła mi: serverfault.com/a/515531/175380 Zasadniczo ustawiłeś lokalizację, która ma być dublowana w post_actiondyrektywie. Uruchomi się to po spełnieniu żądania przez maszynę produkcyjną.
Moduł ngx_http_mirror_module (1.13.4) implementuje dublowanie oryginalnego żądania poprzez tworzenie żądań dublowania w tle. Odpowiedzi na zapytania lustrzane są ignorowane.
Hej, jeśli użyjesz GOR, po prostu potwierdza to za pomocą http 200. Więc jeśli ma obiekt odpowiedzi lub weryfikację, chce zrobić to, co wysyła mu klient, nie sądzę, że to zadziała. O ile mogę stwierdzić, a jestem nowy w Gor, nie możesz przekazać obiektu wynikowego z jednego z segmentów wyjściowych.
PatrickWalker,
Obecnie testujemy GOR i mamy kilka problemów. Interpretuje nagłówki takie jak: Lokalizacja: // newpath generując żądania takie jak GET // newpath. Przekierowuje luźne oryginalne nagłówki (w tym host użytkownika itp.) Przeprowadzamy migrację do innego narzędzia.
Pomyślałem, że powinienem wspomnieć o tym tutaj, aby ułatwić wyszukiwanie innych osób. W mojej konfiguracji nie używałem uwsgi - zamiast tego chciałem duplikować każde przychodzące żądanie do dodatkowych serwerów (oprócz serwerów szkieletowych, które były już zrównoważone pod względem obciążenia.
post_action
dyrektywie. Uruchomi się to po spełnieniu żądania przez maszynę produkcyjną.Odpowiedzi:
Nginx ma teraz moduł lustrzanego http. Dokumentacja znajduje się na https://nginx.org/en/docs/http/ngx_http_mirror_module.html
Przykładowa konfiguracja z dokumentacji:
źródło
Oto nowa funkcja od Nginx (1.13.4): http://nginx.org/en/docs/http/ngx_http_mirror_module.html#mirror
źródło
Na podstawie ich README Wygląda na to, że GOR może pomóc w rozwiązaniu problemu.
Nigdy wcześniej go nie użyłem, natknąłem się na to w tym tygodniu, więc powodzenia!
źródło
nie można kopiować żądań za pomocą NGINX, ale żądanie jest dostępne jako zmienna. Możesz jednak użyć skryptu Lua, aby wysłać tę zmienną na serwer strony trzeciej jako żądanie podrzędne. http://nginx.org/en/docs/http/ngx_http_core_module.html#var_request
źródło
Po kopaniu i kopaniu znalazłem rozwiązanie. Możesz to zobaczyć tutaj Skopiuj i dostarcz żądanie do innego serwera nginx w celu przetestowania prawdziwego ruchu przez @scari
Pomyślałem, że powinienem wspomnieć o tym tutaj, aby ułatwić wyszukiwanie innych osób. W mojej konfiguracji nie używałem uwsgi - zamiast tego chciałem duplikować każde przychodzące żądanie do dodatkowych serwerów (oprócz serwerów szkieletowych, które były już zrównoważone pod względem obciążenia.
Mam nadzieję, że to pomoże,
Liron
źródło