3 veidi, kā rakstīt serveri, izmantojot Python

Satura rādītājs:

3 veidi, kā rakstīt serveri, izmantojot Python
3 veidi, kā rakstīt serveri, izmantojot Python

Video: 3 veidi, kā rakstīt serveri, izmantojot Python

Video: 3 veidi, kā rakstīt serveri, izmantojot Python
Video: Use Outlook Archive to FREE SPACE & CLEAN UP Your Mailbox 2024, Aprīlis
Anonim

Izveidot serveri no nulles ir liels uzdevums. Tomēr tas var ievērojami uzlabot jūsu programmēšanas prasmes un ļaut jums to pielāgot savām vajadzībām. Šī apmācība izmantos python un zema līmeņa ligzdas programmēšanu, lai izveidotu serveri, lai klienti varētu sazināties savā starpā. Tas arī attieksies tikai uz Windows procesu. Daļa informācijas tiks sniegta instrukcijās, bet, ja vēlaties tikai kodu, tas ir norādīts attēlos. (Piezīme: šeit sniegtie norādījumi ir tikai pamati).

Soļi

1. metode no 3: Python instalēšana

Uzrakstiet serveri, izmantojot Python
Uzrakstiet serveri, izmantojot Python

1. solis. Lejupielādējiet Python

Dodieties uz python galveno vietni un lejupielādējiet Python 2.7.10. Pēc lejupielādes tiek veiktas python instalētāja darbības ar noklusējuma iestatījumiem. Šī saite ir pieejama šeit

Uzrakstiet serveri, izmantojot Python 2. darbību
Uzrakstiet serveri, izmantojot Python 2. darbību

2. solis. Palaidiet IDLE (Python GUI)

Iet uz mapi Python 2.7 un palaidiet IDLE (Python GUI), tagad python vajadzētu būt sākuma izvēlnē, kur atrodas IDLE.

Uzrakstiet serveri, izmantojot Python 3. darbību
Uzrakstiet serveri, izmantojot Python 3. darbību

3. Izveidojiet jaunu failu

Dodieties uz failu jaunatvērtā loga augšējā kreisajā stūrī un atlasiet Jauns fails, jums vajadzētu atvērt tukšu logu ar nosaukumu Bez nosaukuma.

2. metode no 3: servera izveide

Uzrakstiet serveri, izmantojot Python 4. darbību
Uzrakstiet serveri, izmantojot Python 4. darbību

1. darbība. Importējiet nepieciešamos moduļus

Šim kodam vajadzīgie divi moduļi ir “ligzda” un “vītņošana”. To var izdarīt, pirmajā rindā ierakstot “no kontaktligzdas importēšanas *” un nākamajā rindiņā “importēt pavedienu”.

Uzrakstiet serveri, izmantojot Python 5. darbību
Uzrakstiet serveri, izmantojot Python 5. darbību

2. solis. Izveidojiet jaunu pavedienu

Tādējādi tiks saskaņoti 2 klienti. Pavedieni ir procesi, kas var darboties, kamēr darbojas galvenā programma. Ierakstiet tieši tā, kā parādīts attēlā. Tādējādi pavedienā tiks iestatīti mainīgie, lai tos varētu izsaukt vēlāk.

Uzrakstiet serveri, izmantojot Python 6. darbību
Uzrakstiet serveri, izmantojot Python 6. darbību

Solis 3. Izveidojiet pavedienu procesu

Lai klienti varētu sazināties tieši, jums ir jānosūta viens otram informācija, tostarp viņu IP adrese un tas, kuru portu viņi izmanto. Lai to izdarītu, jums ir jāizveido ligzdas objekts, ko var izdarīt ar “variableName = socket (AF_NET, SOCK_DGRAM)”. Tādējādi tiks izveidots ligzdas objekts, kas izmanto UDP protokolu. Tālāk Piesieniet ligzdu savai IP adresei ar noteiktu porta numuru ar “roomSocket.bind (('', self.port))” Tukšais laukums apzīmē jūsu datora IP adresi jūsu lokālajā tīklā un self.port porta numurs, kas tiek iekļauts, zvanot uz šo pavedienu. Pēdējā lieta, kas jums jādara ar šo kontaktligzdu, ir nosūtīt informāciju caur to. Tā kā šī ir UDP ligzda, jums vienkārši jāzina tā datora IP un ports, uz kuru sūtāt informāciju, sūtīšanas sintakse ir “socketName.sendto (IP, ports)”

Uzrakstiet serveri, izmantojot Python 7. darbību
Uzrakstiet serveri, izmantojot Python 7. darbību

4. solis. Izveidojiet globālos mainīgos

Šajā solī jums būs jādefinē vairāki mainīgie, kas ietver lietotāju sarakstu, portu numurus, klientu skaitu, pavediena klientus un telpas ID. Jums arī būs jāizveido kontaktligzda, lai jūsu serveris varētu mijiedarboties ar internetu. Tas tiek darīts, izveidojot jaunu kontaktligzdas objektu un piesaistot to jūsu IP adresei ar noteiktu porta numuru. (Porta numurs var būt jebkas, bet parasti tas ir kaut kas augsts, lai izvairītos no cita procesa izmantošanas vai rezervētu portu numuru izmantošanas.)

Uzrakstiet serveri, izmantojot Python 8. darbību
Uzrakstiet serveri, izmantojot Python 8. darbību

Solis 5. Izveidojiet galvenā servera procesu

Tas ņems vērā klienta adresi, kā arī sāks agrāk izveidoto pavedienu. Tas ietver gaidīšanu, lai saņemtu datus no bufera un iegūtu klienta adresi un saglabātu to izmantošanai pavedienā. Informāciju no kontaktligzdas var iegūt, zvanot pa numuru “socketName.recvfrom (1024)”. Šeit norādītais skaitlis ir tikai baitu daudzums, kas tiek nolasīts vienlaikus. Šajā piemērā mēs to glabājam mainīgajā ar nosaukumu userAddr, un, kad tas ir noticis, varat saglabāt šo adresi sarakstā, kas tika izveidots 4. solī. Ja paziņojums izveidos telpas pavedienu, ja divi cilvēki izveidos savienojumu un izveidos tikai telpu kad notiek divi dažādi savienojumi.

Uzrakstiet serveri, izmantojot Python 9. darbību
Uzrakstiet serveri, izmantojot Python 9. darbību

6. solis. Saglabājiet savu darbu

Tas jādara direktorijā, kurā ir viegli piekļūt, lai tam varētu viegli piekļūt testēšanai.

3. metode no 3: pārbaude

Uzrakstiet serveri, izmantojot Python 10. darbību
Uzrakstiet serveri, izmantojot Python 10. darbību

1. darbība. Izveidojiet testa klientu

Šis ir ļoti vienkāršs klients, kas apstrādās tikai to, vai serveris ir nosūtījis otra klienta informāciju pašreizējam klientam. Lūdzu, ņemiet vērā, ka atšķirībā no servera koda šim kodam ir nepieciešams servera nosaukums. Ja jūs to visu izmantojat vienā datorā, servera nosaukumam ir jābūt datora nosaukumam. Jūs varat uzzināt sava datora nosaukumu, ar peles labo pogu noklikšķinot uz Mans dators un dodoties uz Rekvizīti.

Uzrakstiet serveri, izmantojot Python 11. darbību
Uzrakstiet serveri, izmantojot Python 11. darbību

2. solis. Saglabājiet savu darbu

Tam vajadzētu būt tajā pašā direktorijā kā servera kods.

Uzrakstiet serveri, izmantojot Python 12. darbību
Uzrakstiet serveri, izmantojot Python 12. darbību

3. solis. Atveriet trīs dažādus komandu logus

Dodieties uz sākuma izvēlni un meklēšanas joslā ierakstiet “cmd” un nospiediet taustiņu Enter. Dariet to trīs reizes. Logiem vajadzētu izskatīties šādi.

Uzrakstiet serveri, izmantojot Python 13. darbību
Uzrakstiet serveri, izmantojot Python 13. darbību

Solis 4. Palaidiet programmas

Izmantojot komandu logu, jums būs jāievada precīzs ceļš. Vispirms vienā komandu logā būs jāpalaiž servera kods, bet pārējos divos - testa klienta kods. Ja viss bija veiksmīgs, jūs savā logā saņemsit kaut ko no šiem ziņojumiem.

Brīdinājumi

  • Šī programma darbosies tikai tās palaišanas laikā un pārbaudīs klientus tajā pašā lokālajā tīklā.
  • Python 2.7.10 ir novecojis un tuvojas tā atbalsta beigām. Lai turpinātu veidot labus serverus, tā vietā ieteicams instalēt jaunāko Python 3 versiju.

Ieteicams: