Metody utrwalania połączeń z serwerem receptą na problemy handlu elektronicznego

Firmy świadczące usługi handlu elektronicznego oraz mające wiele aplikacji biznesowych stają wobec poważnego wyzwania związanego z koniecznością eksploatacji wielu serwerów potrzebnych do zagwarantowania wymaganej skalowalności.

Firmy świadczące usługi handlu elektronicznego oraz mające wiele aplikacji biznesowych stają wobec poważnego wyzwania związanego z koniecznością eksploatacji wielu serwerów potrzebnych do zagwarantowania wymaganej skalowalności.

Typowa transakcja biznesowa składa się z kilku połączeń TCP skojarzonych pomiędzy przeglądarką klienta a serwerami. Jeśli tych serwerów jest wiele, to dana transakcja może zostać skierowana do któregokolwiek z nich.

Jeśli problem równoważenia obciążenia pomiędzy wieloma serwerami rozwiązuje wiele urządzeń, żadne z nich nie jest w stanie sprostać różnorodnym wymaganiom na utrwalenie połączeń (persistence). Dzieje się tak, ponieważ utrwalenie połączenia wymaga z definicji, by urządzenia równoważące ignorowały sytuację w serwerach i wybierały odpowiedni serwer na zasadach zapewniających trwałość połączenia. Urządzenia równoważące obciążenie obchodzą ten problem, ograniczając się do zapewnienia możliwie wysokiego poziomu stałości. Z tego powodu istnieje wiele różnych metod utrwalania połączenia. Trzy z nich odgrywają szczególnie ważną rolę w budowie ośrodków webowych dla handlu elektronicznego: wirtualne źródło (virtual source), przełączanie cookie i sesje SSL (Secure Sockets Layer), oparte na identyfikatorze ID.

Metody utrwalania połączeń z serwerem receptą na problemy handlu elektronicznego

Jak to działa

Jeśli przedsiębiorstwo lub dostawca usług internetowych używa techniki równoważenia obciążenia pomiędzy wieloma serwerami proxy w celu podłączenia się do Internetu, to ten sam użytkownik może dotrzeć do strony webowej z innego serwera proxy dla każdego połączenia TCP. Dlatego źródłowy adres IP nie jest wiarygodnym wskaźnikiem danego użytkownika. Jest to problem znany jako megaproxy. Można go rozwiązać wykorzystując technikę przełączania cookie lub wirtualnego źródła.

Wirtualne źródło - pozwalające urządzeniu do równoważenia obciążenia traktować całkowity ruch z wielu źródeł, o wielu adresach IP, jako przychodzących z jednego źródła - może być przydatne w przypadku, gdy nie można użyć przełączania cookie oraz gdy użytkownicy wyłączyli przełączanie cookie w swoich przeglądarkach.

Na przełączaniu cookie opierają się dwa sposoby utrwalenia połączeń. Pierwsze podejście polega na tym, że serwer webowy ustawia wartość cookie, która wskazuje przełącznikowi równoważącemu obciążenie serwer webowy, do którego połączenie musi być skierowane.

W drugim podejściu urządzenie równoważące obciążenie może podzielić ciąg cookie w celu wybrania serwera webowego. Gdy tylko urządzenie równoważące obciążenie wybierze serwer webowy dla danej wartości dzielącej, nastąpi trwałe połączenie z tym serwerem dla wszystkich późniejszych żądań związanych z tym samym ciągiem cookie. Metody utrwalania połączenia, oparte na przełączaniu cookie, można użyć łącznie z utrwalaniem połączenia opartym na źródle IP, w porozumieniu z użytkownikiem albo w sytuacjach, gdy brak cookie.

Protokołu SSL używa się do zapewnienia bezpieczeństwa handlu elektronicznego w Internecie. Jak widać na rysunku, w celu ustalenia sesji SSL klient i serwer webowy wymieniają najpierw parametry niezbędne do szyfrowania i deszyfrowania. W trakcie negocjacji serwer webowy wysyła identyfikator SSL. Urządzenie równoważące obciążenie zapamiętuje identyfikator sesji SSL i jego skojarzenie z serwerem webowym, dzięki temu zapewniając skierowanie całego ruchu przyporządkowanego do danego identyfikatora sesji SSL stale do tego samego serwera webowego.

Oceniając przełącznik równoważący obciążenie z punktu widzenia możliwości utrwalania sesji, należy wziąć pod uwagę liczbę sesji równocześnie ustalanych. Jest to konieczne, ponieważ utrzymanie tego typu sesji w wydłużonych przedziałach czasu może zająć znaczną część tablicy sesji. Należy zwrócić uwagę na to, że przełącznik równoważenia obciążenia musi obsłużyć odpowiednią liczbę sesji, tak aby utrzymać nie tylko wszystkie aktywne sesje, ale też śledzić informacje dotyczące przyszłych sesji.

Przykładowo przełącznik równoważący obciążenie musi śledzić identyfikatory 20 000 sesji SSL, by z powodzeniem przetworzyć równoczesne zgłoszenia wózka zakupowego 20 000 klientów. Przełączniki równoważące obciążenie, które śledzą sesje w centralnie dzielonej pamięci, przyczyniają się do zapewnienia obsługi większej liczby współbieżnych sesji oraz wspierają wiele różnych topologii sieciowych, aby zapewnić odpowiedni poziom niezawodności i zadowalający stosunek ceny do wydajności.

Z drugiej strony przełączniki równoważące obciążenie, które śledzą sesje w pamięci skojarzonej ze wszystkimi portami, zapewniają obsługę ograniczonej liczby współbieżnych sesji z powodu ograniczeń przypadających na port oraz ostrych ograniczeń narzuconych w projekcie sieci.

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200