MCP Academy · Lekcja

Sesje i ponowne połączenia

Zachowuj stan między żądaniami i zerwanymi połączeniami.

Lekcja 4 z 413 kroki

Sesje i ponowne połączenia to bezpłatna lekcja MCP Academy na CoddyKit. To lekcja 4 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej MCP Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs MCP Academy zawiera 4 lekcji w sumie.

Dlaczego serwery potrzebują pamięci

Zdalny serwer może jednocześnie obsługiwać wielu klientów. Aby prawidłowo rozdzielać rozmowy, musi pamiętać, kto jest kim — do tego służy sesja. 🧠

Sesja powstaje podczas inicjalizacji

Sesja rozpoczyna się podczas uzgadniania initialize. Serwer wita nowego klienta i konfiguruje stan, który będzie śledził to połączenie.

Poznajmy identyfikator sesji

Aby oznaczyć sesję, serwer zwraca unikalny nagłówek Mcp-Session-Id w odpowiedzi na initialize. Można myśleć o nim jak o bilecie klienta.

Mcp-Session-Id: a1b2c3d4

Klient odsyła go w kolejnych żądaniach

W każdym kolejnym żądaniu klient umieszcza ten sam id w nagłówkach. Serwer odczytuje go i dokładnie wie, do której sesji należy dane wywołanie.

Mcp-Session-Id: a1b2c3d4

Stan jest przechowywany w sesji

Wszystko, co serwer powinien pamiętać między wywołaniami, na przykład zalogowanego użytkownika lub kursor, jest powiązane z sesją. Różni klienci nigdy nie widzą swoich danych.

Tryb bezstanowy pomija identyfikator

Nie każdy serwer potrzebuje pamięci. Serwer bezstanowy traktuje każde żądanie niezależnie i nie wydaje identyfikatora sesji, co znacznie upraszcza skalowanie.

Sieci zrywają połączenia

W internecie połączenia mogą się zrywać: strumień może zakończyć się w połowie odpowiedzi. Dobry transport musi obsłużyć zerwane połączenie bez utraty całej sesji. 📡

Wznawianie przerwanego strumienia

Pamiętają Państwo identyfikatory zdarzeń SSE? Klient łączy się ponownie i wysyła znany sobie nagłówek Last-Event-ID, prosząc serwer o odtworzenie tylko tych zdarzeń, które nastąpiły później.

Last-Event-ID: 42

Bez duplikatów i bez luk

Ponieważ każde zdarzenie miało numer, odtwarzanie jest precyzyjne. Klient niczego nie pomija i nie otrzymuje niczego dwukrotnie, więc chwilowa awaria nie uszkadza wyniku.

Kończenie sesji

Gdy klient zakończy pracę, może wysłać żądanie HTTP DELETE do endpointu wraz z identyfikatorem sesji. Serwer zwalnia stan i utrzymuje porządek w pamięci.

DELETE /mcp

Korzyść

Sesje i ponowne łączenie razem sprawiają, że zdalny serwer wydaje się niezawodny: pamięta kontekst i sprawnie radzi sobie z niestabilnymi sieciami. ✨

Szybkie sprawdzenie

Jak klient potwierdza, do której sesji należy żądanie?

Podsumowanie: sesje i ponowne łączenie

Identyfikator sesji, ustawiony podczas inicjalizacji i odsyłany w kolejnych żądaniach, wiąże każdego klienta z jego stanem. Numerowane zdarzenia SSE pozwalają płynnie wznowić przerwany strumień bez luk. 🎉

Bezpłatny start

Ucz się Python dzięki korepetycjom AI — za darmo

Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.

Kursy
30
Lekcje
120

Często zadawane pytania

Czy lekcja „Sesje i ponowne połączenia” jest bezpłatna?

Tak — pełny tekst „Sesje i ponowne połączenia” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu MCP Academy, przejdź na CoddyKit PRO. Kurs MCP Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Sesje i ponowne połączenia”?

Zachowuj stan między żądaniami i zerwanymi połączeniami. Ćwiczysz MCP Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć MCP Academy?

Nie wymagamy żadnego doświadczenia. MCP Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 4 z 4.

Ile czasu zajmuje lekcja „Sesje i ponowne połączenia”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji MCP Academy?

Tak. Każda lekcja MCP Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Dlaczego stdio nie wystarcza
  2. Transport Streamable HTTP
  3. Strumieniowanie odpowiedzi za pomocą SSE
  4. Sesje i ponowne połączenia
← Powrót do MCP Academy