Klienci i serwery
Lekcja 2 z 47 w kursie Sieci komputerowe w terminalu w Coddy.
W każdej wymianie jedna strona rozpoczyna rozmowę, a druga na nią czeka. Strona, która wysyła zapytanie, to klient. Strona, która czeka i odpowiada, to serwer.
To role, a nie maszyny. Ten sam komputer jest serwerem, gdy odpowiada na żądanie sieciowe, a sekundę później klientem, gdy wysyła zapytanie do bazy danych. Twój laptop jest zwykle klientem, ale w chwili, gdy uruchomisz lokalny serwer deweloperski, staje się również serwerem.
Serwer robi coś konkretnego i nieco dziwnego: uruchamia się, a potem czeka, nic nie robiąc, czasem tygodniami. Nasłuchuje. Gdy w końcu nadejdzie żądanie, odpowiada i wraca do czekania.
Klient musi wiedzieć, dokąd wysłać żądanie, a serwer musi nasłuchiwać we właściwym miejscu, aby mogło ono dotrzeć. To cała procedura nawiązania połączenia, a gdy coś nie działa, prawie zawsze problem dotyczy jednej z tych dwóch stron.
Wyzwanie
ŁatwyUruchom serwer w trybie nasłuchiwania, a następnie sprawdź, czy rzeczywiście oczekuje na połączenia.
- Uruchom serwer na porcie 9102 w tle
- Daj mu sekundę na uruchomienie
- Sprawdź port za pomocą
nc -zi wypiszlistening, jeśli coś odpowie, albonothing, jeśli nie
Oczekiwany wynik:
listening
command && echo a || echo bwypisujea, gdy polecenie się powiedzie, ib, gdy się nie powiedzie.
Spróbuj swoich sił
Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Sieci komputerowe w terminalu
3Porty i gniazda
Czym jest portDobrze znane portyLocalhostNasłuchiwanie a łączeniePodsumowanie: porty6curl od podstaw do zaawansowania
Wyświetlanie nagłówkówZapisywanie odpowiedziWłasne nagłówkiStatus i czasKody zakończenia curlPodsumowanie: flagi curl9Uwierzytelnianie i debugowanie
Klucze API i BearerUser AgentLimity czasu i ponowieniaAnaliza błęduPodsumowanie: debugowaniePoćwicz samodzielnie: Edytor online Terminal