Vytvorenie servera od začiatku je veľká úloha. To však môže výrazne zlepšiť vaše programátorské schopnosti a umožní vám to upraviť ho podľa svojich potrieb. Tento tutoriál bude používať python a nízkoúrovňové programovanie soketov na vytvorenie servera, aby klienti mohli navzájom komunikovať. To tiež pokryje iba proces na oknách. Niektoré informácie budú uvedené v pokynoch, ale ak chcete iba kód, je uvedený na obrázkoch. (Poznámka: tu uvedené pokyny sú iba základy).
Kroky
Metóda 1 z 3: Inštalácia Pythonu
Krok 1. Stiahnite si Python
Prejdite na hlavný web pythonu a stiahnite si Python 2.7.10. Po dokončení sťahovania postupujte podľa pokynov inštalátora pythonu s predvolenými nastaveniami. Tento odkaz je k dispozícii tu
Krok 2. Spustite IDLE (Python GUI)
Prejdite do priečinka Python 2.7 a spustite IDLE (Python GUI), python by teraz mal byť v ponuke Štart, kde sa nachádza IDLE.
Krok 3. Vytvorte nový súbor
V ľavom hornom rohu novo otvoreného okna prejdite na položku Súbor a vyberte položku Nový súbor. Mali by ste mať otvorené prázdne okno s názvom Bez názvu.
Metóda 2 z 3: Vytvorenie servera
Krok 1. Importujte potrebné moduly
Dva moduly potrebné pre tento kód sú „socket“a „threading“. To sa dá dosiahnuť zadaním prvého riadku „z importu soketu *“a do ďalšieho riadka „vlákno importu“.
Krok 2. Vytvorte nové vlákno
To zvládne párovanie 2 klientov navzájom. Vlákna sú procesy, ktoré je možné spustiť, kým je spustený hlavný program. Napíšte presne tak, ako to ukazuje obrázok. Tým sa nastavia premenné vo vlákne, aby ich bolo možné neskôr volať.
Krok 3. Vytvorte postup vlákna
Aby klienti mohli priamo komunikovať, musíte si navzájom poslať informácie, ktoré obsahujú ich IP adresu a port, ktorý používajú. Na to musíte vytvoriť objekt soketu, ktorý je možné vykonať pomocou „variableName = socket (AF_NET, SOCK_DGRAM)“. Tým sa vytvorí objekt soketu, ktorý používa protokol UDP. Ďalej Pripojte soket k vašej IP adrese s určitým číslom portu pomocou „roomSocket.bind (('', self.port))” Prázdna oblasť znamená IP adresu vášho počítača v rámci vašej lokálnej siete a self.port priradí číslo portu, ktoré je zahrnuté pri volaní tohto vlákna. Posledná vec, ktorú musíte urobiť s týmto soketom, je odosielať informácie prostredníctvom neho. Pretože ide o soket UDP, musíte jednoducho poznať IP a port počítača, na ktorý odosielate informácie, syntax na odosielanie je „socketName.sendto (IP, port)“
Krok 4. Vytvorte globálne premenné
Pre tento krok budete musieť definovať niekoľko premenných, ktoré obsahujú zoznam užívateľov, čísla portov, počet klientov, klientov pre vlákno a ID miestnosti. Budete tiež musieť vytvoriť soket, aby váš server mohol interagovať s internetom. To sa dosiahne vytvorením nového objektu soketu a jeho viazaním na vašu IP adresu s určitým číslom portu. (Číslo portu môže byť čokoľvek, ale zvyčajne je to niečo vysoké, aby ste sa vyhli používaniu iného procesu alebo rezervovaným číslam portov.)
Krok 5. Vytvorte hlavný serverový proces
Prevezme sa adresa klienta a spustí sa vlákno vytvorené skôr. To zahŕňa čakanie na prijatie údajov z vyrovnávacej pamäte a získanie adresy klienta a uloženie na použitie vo vlákne. Informácie, ako získať informácie zo zásuvky, je zavolať na číslo „socketName.recvfrom (1024)“. Tu uvedené číslo predstavuje iba počet bajtov, ktoré sa dajú naraz načítať. V tomto prípade ho ukladáme do premennej s názvom userAddr a akonáhle sa to stane, môžete túto adresu uložiť do zoznamu, ktorý bol vytvorený v kroku 4. Príkaz if vytvorí vlákno miestnosti, ak sa spoja dvaja ľudia a vytvorí iba miestnosť keď nastanú dve rôzne spojenia.
Krok 6. Uložte svoju prácu
To sa musí vykonať v adresári, ku ktorému je ľahké sa dostať, aby bol k nemu ľahký prístup na testovanie.
Metóda 3 z 3: Testovanie
Krok 1. Vytvorte testovacieho klienta
Jedná sa o veľmi základného klienta, ktorý zvládne iba to, či server odoslal alebo odoslal informácie o inom klientovi súčasnému klientovi. Upozorňujeme, že na rozdiel od kódu servera tento kód vyžaduje názov servera. Ak to všetko spustíte na jednom počítači, názov servera by mal byť názvom vášho počítača. Názov počítača môžete zistiť kliknutím pravým tlačidlom myši na položku Tento počítač a prechodom na položku Vlastnosti.
Krok 2. Uložte svoju prácu
Ten by mal byť v rovnakom adresári ako kód servera.
Krok 3. Otvorte tri rôzne okná príkazov
Prejdite do ponuky Štart a do vyhľadávacieho panela napíšte „cmd“a stlačte kláves Enter. Vykonajte to trikrát. Okná by mali vyzerať takto.
Krok 4. Spustite programy
Pri použití príkazového okna budete musieť zadať presnú cestu. V jednom príkazovom okne budete musieť najskôr spustiť kód servera a v ďalších dvoch testovací kód klienta. Ak bolo všetko úspešné, dostanete niečo z týchto správ do svojho okna.
Varovania
- Tento program bude fungovať iba vtedy, keď ho spustíte a testujete klientov v rovnakej lokálnej sieti.
- Python 2.7.10 je zastaraný a blíži sa koniec svojej podpory. Ak chcete pokračovať v vytváraní dobrých serverov, odporúča sa namiesto toho nainštalovať najnovšiu verziu Pythonu 3.