Siedzisz przed monitorem, uruchamiasz przeglądarkę i wpisujesz adres strony internetowej, klikasz enter i zamiast oczekiwanej zawartości strony pojawia się błąd:
„Proxy Error
The proxy server received an invalid response from an upstream server.
The proxy server could not handle the request GET /.
Reason: Error reading from remote server”
Brzmi znajomo? Myślę, że tak. Patrząc na stopień wykorzystania Internetu, połączeń i komunikacji elektronicznej taki błąd może się zdarzyć zawsze. Może to być podczas przeglądania Intranetu na domowym komputerze czy podczas szukania informacji w sieci wewnętrznej, mającej połączenie z Internetem.
Przyczyny błędu mogą być różne i na różnym etapie mogą nastapić – na serwerze sieci na przykład lokalnego dostawcy internetu, na serwerze firmy, który próbuje się dostać do danych wewnątrz, na serwerze obsługującym połączenia między siecią wewnętrzną a Internetem.
Cechą wspólną tych sytuacji jest to, że do pewnego serwera wysyłane jest żądanie, które on próbuje obsłużyć. A następnie ma miejsce komunikacja w drugą stronę. Poniższy przykładowy diagram przedstawia taką sytuację.
Diagram obrazuje także ideę wzorca projektowego Pełnomocnik (ang. proxy), który opiera się na założeniu, że między klientem a rzeczywistym obiektem znajduje się pełnomocnik. Pełnomocnik ten decyduje o udostępnieniu rzeczywistego obiektu (kontroluje dostęp do niego). Może mieć też charakter zabezpieczający, co jak najbardziej można sobie wyobrazić również w powyższych przykładach.
Nazwa „proxy”, pojawiająca się w powyższym komunikacie błędu, nie jest przypadkowa. Serwer zwracający ten błąd wskazuje o braku możliwości realizacji żądania albo o niedostępności rzeczywistego obiektu. Jest pełnomocnikiem zasobów dostępnych na danym serwerze lub w połączonej sieci.
[…] na jedną istotną funkcję Rezydenta, która przypomina w pewnych sytuacjach działanie wzorca Pełnomocnika a w innych sytuacjach – „Request- Response” lub „Fire and Forget”. Poniżej zostały […]