Puncte:0

AWS Beanstalk și Elastic Load Balancer: direcționează către o anumită instanță

drapel cg

Implementăm o aplicație care utilizează AWS elastic beanstalk cu autoscaling, în spatele unui echilibrator de încărcare. În prezent, folosim un echilibrator de încărcare a aplicației.

Ne-am dori să putem direcționa unii utilizatori/cereri către o anumită instanță din spatele echilibratorului de încărcare, în mod ideal, prin URL. De exemplu, dacă ar veni o solicitare http pentru adresa URL http://domeniul_aplicație/ceva/123, aceasta ar trebui direcționată către instanța 123, în timp ce http://domeniul_aplicație/ceva/456 ar trebui direcționată către instanța 456. O POST sau alt antet http ar putea funcționa, de asemenea, dacă ar fi mai ușor. Sau ar putea chiar să implice ceva ce se face pe partea clientului folosind Javascript.

Ceea ce este important pentru noi este că aceasta ar putea fi orice exemplu, dintre multe dintre cele scalate automat. Fluxul pe care îl avem în vedere este că un utilizator merge la o instanță, acea instanță îi oferă un link undeva și apoi, dacă altcineva vizitează acel link, va ajunge pe aceeași instanță.

Este posibil așa ceva?

Am găsit câteva sugestii pentru a găsi ID-ul instanței unei anumite instanțe aici: Cum să găsesc instanța ec2 care procesează cererea mea și care este transmisă de un Elastic Load Balancer Și aceasta menționează, de asemenea, cookie-ul pe care ELB îl folosește pentru a menține lipiciitatea sesiunii - ar putea exista o modalitate de a suprascrie cookie-ul pentru a face ruta ELB către o altă instanță?

Un alt lucru pe care l-am găsit sunt grupurile țintă. Am putea crea multe grupuri țintă cu câte o instanță în fiecare, iar apoi ceea ce vrem să facem ar trebui să funcționeze, cred. Dar problema este că vrem ca acest lucru să funcționeze cu scalarea automată și nu cred că există o modalitate de a scala automat grupurile țintă (doar instanțe în cadrul grupurilor țintă), nu-i așa?

O alternativă ar putea fi ca instanțele în sine să spună echilibratorului de încărcare dacă doresc să accepte conexiunea, dar nu știu dacă asta ar putea funcționa. De exemplu.dacă instanța 456, la primirea unei cereri cu o adresă URL de exemplu 123, returnează un cod de eroare HTTP temporar și apoi autoscaler-ul îl redirecționează către o altă instanță, până când în cele din urmă îl direcționează către 123?

Orice alt mod de a face acest lucru ar fi bine, desigur! Multumesc mult!

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.