3 გზა სერვერის დასაწერად პითონთან ერთად

Სარჩევი:

3 გზა სერვერის დასაწერად პითონთან ერთად
3 გზა სერვერის დასაწერად პითონთან ერთად

ვიდეო: 3 გზა სერვერის დასაწერად პითონთან ერთად

ვიდეო: 3 გზა სერვერის დასაწერად პითონთან ერთად
ვიდეო: Use Outlook Archive to FREE SPACE & CLEAN UP Your Mailbox 2024, აპრილი
Anonim

ნულიდან სერვერის შექმნა დიდი ამოცანაა. ამასთან, ამის გაკეთება მნიშვნელოვნად გააუმჯობესებს თქვენს პროგრამირების უნარებს და საშუალებას მოგცემთ შეცვალოთ იგი თქვენს საჭიროებებზე. ეს გაკვეთილი გამოიყენებს პითონს და დაბალი დონის სოკეტის პროგრამირებას სერვერის შესაქმნელად, რათა კლიენტებს შეეძლოთ ერთმანეთთან ურთიერთობა. ეს ასევე მოიცავს მხოლოდ ფანჯრების პროცესს. გარკვეული ინფორმაცია მოცემულია ინსტრუქციებში, მაგრამ თუ თქვენ უბრალოდ გსურთ კოდი, ის მოცემულია ფიგურებში. (შენიშვნა: ინსტრუქციები აქ მოცემულია მხოლოდ საფუძვლები).

ნაბიჯები

მეთოდი 1 -დან 3 -დან: პითონის დაყენება

დაწერე სერვერი პითონით ნაბიჯი 1
დაწერე სერვერი პითონით ნაბიჯი 1

ნაბიჯი 1. ჩამოტვირთეთ პითონი

გადადით პითონის მთავარ ვებსაიტზე და გადმოწერეთ პითონი 2.7.10. გადმოტვირთვის შემდეგ გაიარეთ პითონის ინსტალერის ნაბიჯები ნაგულისხმევი პარამეტრებით. ეს ბმული მოცემულია აქ

დაწერე სერვერი პითონით ნაბიჯი 2
დაწერე სერვერი პითონით ნაბიჯი 2

ნაბიჯი 2. გაუშვით IDLE (Python GUI)

შედით Python 2.7 საქაღალდეში და გაუშვით IDLE (Python GUI), პითონი ახლა უნდა იყოს თქვენს საწყის მენიუში, სადაც მდებარეობს IDLE.

დაწერე სერვერი პითონით ნაბიჯი 3
დაწერე სერვერი პითონით ნაბიჯი 3

ნაბიჯი 3. შექმენით ახალი ფაილი

გადადით ფაილზე ახლად გახსნილი ფანჯრის ზედა მარცხენა კუთხეში და შეარჩიეთ ახალი ფაილი, თქვენ უნდა გქონდეთ ცარიელი ფანჯარა გახსნილი სათაურით უსათაურო.

3 მეთოდი 2: სერვერის შექმნა

დაწერე სერვერი პითონით ნაბიჯი 4
დაწერე სერვერი პითონით ნაბიჯი 4

ნაბიჯი 1. საჭირო მოდულების იმპორტი

ამ კოდისთვის საჭირო ორი მოდული არის „სოკეტი“და „ძაფისებრი“. ეს შეიძლება გაკეთდეს პირველი სტრიქონის "სოკეტის იმპორტიდან *" და მომდევნო ხაზზე "იმპორტის ძაფის" აკრეფით.

დაწერე სერვერი პითონით ნაბიჯი 5
დაწერე სერვერი პითონით ნაბიჯი 5

ნაბიჯი 2. შექმენით ახალი თემა

ეს გაუმკლავდება 2 კლიენტის ერთმანეთთან შესაბამისობას. თემები არის პროცესები, რომელთა გაშვებაც შესაძლებელია ძირითადი პროგრამის მუშაობისას. ჩაწერეთ ზუსტად ისე, როგორც ნაჩვენებია ფიგურაში. ეს შექმნის ცვლადებს ძაფში ისე, რომ მათ მოგვიანებით შეეძლოთ დარეკვა.

დაწერე სერვერი პითონით ნაბიჯი 6
დაწერე სერვერი პითონით ნაბიჯი 6

ნაბიჯი 3. შექმენით ძაფის პროცესი

იმისათვის, რომ კლიენტებმა უშუალოდ დაუკავშირდნენ, თქვენ უნდა გაუგზავნოთ ერთმანეთის ინფორმაცია, რომელიც მოიცავს მათ IP მისამართს და რომელ პორტს იყენებენ. ამისათვის თქვენ უნდა შექმნათ სოკეტის ობიექტი, რომლის გაკეთებაც შესაძლებელია „variableName = socket (AF_NET, SOCK_DGRAM)“. ეს შექმნის სოკეტის ობიექტს, რომელიც იყენებს UDP პროტოკოლს. შემდეგი შეაერთეთ სოკეტი თქვენს IP მისამართთან გარკვეული პორტის ნომრით "roomSocket.bind (('', self.port))" ცარიელი ადგილი არის თქვენი კომპიუტერის IP მისამართი თქვენს ადგილობრივ ქსელში და self.port მიანიჭებს პორტის ნომერი, რომელიც შედის ამ თემაში დარეკვისას. ბოლო რაც თქვენ უნდა გააკეთოთ ამ სოკეტთან არის ინფორმაციის გაგზავნა მისი საშუალებით. ვინაიდან ეს არის UDP სოკეტი, თქვენ უბრალოდ უნდა იცოდეთ იმ კომპიუტერის IP და პორტი, რომელსაც თქვენ აგზავნით ინფორმაციას, გაგზავნის სინტაქსია "socketName.sendto (IP, port)"

დაწერე სერვერი Python– ით ნაბიჯი 7
დაწერე სერვერი Python– ით ნაბიჯი 7

ნაბიჯი 4. შექმენით გლობალური ცვლადები

ამ ნაბიჯის გადასაჭრელად თქვენ უნდა განსაზღვროთ რამდენიმე ცვლადი, რომელიც მოიცავს მომხმარებლის სიას, პორტის ნომრებს, კლიენტების რაოდენობას, კლიენტებს ძაფისთვის და ოთახის ID- ს. თქვენ ასევე უნდა შექმნათ სოკეტი ისე, რომ თქვენს სერვერს შეეძლოს ინტერნეტთან ურთიერთობა. ეს კეთდება ახალი სოკეტის ობიექტის შექმნით და თქვენს IP მისამართთან დაკავშირებით გარკვეული პორტის ნომრით. (პორტის ნომერი შეიძლება იყოს ნებისმიერი, მაგრამ ეს ჩვეულებრივ რაღაც მაღალია, რათა თავიდან იქნას აცილებული მისი გამოყენების სხვა პროცესი ან დაცული პორტის ნომრების გამოყენება.)

დაწერე სერვერი პითონით ნაბიჯი 8
დაწერე სერვერი პითონით ნაბიჯი 8

ნაბიჯი 5. შექმენით მთავარი სერვერის პროცესი

ეს მიიღებს კლიენტის მისამართს და დაიწყებს ადრე შექმნილ თემას. ეს მოიცავს ბუფერიდან მონაცემების მიღების მოლოდინს და კლიენტის მისამართის მიღებას და შენახვას, რომ გამოიყენოს თემაში. თქვენი სოკეტიდან ინფორმაციის მიღების გზა არის დარეკვა "socketName.recvfrom (1024)" - ით, ნომერი აქ არის მხოლოდ იმ რაოდენობის ბაიტი, რომელიც იკითხება ერთდროულად. ამ მაგალითში ჩვენ ვინახავთ მას ცვლადში, სახელწოდებით userAddr და როგორც კი ეს მოხდება თქვენ შეგიძლიათ შეინახოთ ეს მისამართი იმ სიაში, რომელიც შეიქმნა მე –4 ნაბიჯში. როდესაც ორი განსხვავებული კავშირი ხდება.

დაწერე სერვერი პითონით ნაბიჯი 9
დაწერე სერვერი პითონით ნაბიჯი 9

ნაბიჯი 6. შეინახეთ თქვენი სამუშაო

ეს უნდა გაკეთდეს დირექტორიაში, რომლის მოხვედრაც ადვილია, რათა ტესტირებისთვის ადვილად მისაწვდომი იყოს.

მეთოდი 3 -დან 3: ტესტირება

დაწერე სერვერი პითონით ნაბიჯი 10
დაწერე სერვერი პითონით ნაბიჯი 10

ნაბიჯი 1. შექმენით სატესტო კლიენტი

ეს არის ძალიან ძირითადი კლიენტი, რომელიც მხოლოდ იმას გაუმკლავდება, გაუგზავნა თუ არა სერვერმა სხვა კლიენტის ინფორმაცია მიმდინარე კლიენტს. გთხოვთ გაითვალისწინოთ, რომ სერვერის კოდისგან განსხვავებით, ეს კოდი მოითხოვს სერვერის სახელს. თუ ამ ყველაფერს ერთ კომპიუტერზე მუშაობთ, სერვერის სახელი უნდა იყოს თქვენი კომპიუტერის სახელი. თქვენ შეგიძლიათ გაიგოთ თქვენი კომპიუტერის სახელი მარჯვენა ღილაკით „ჩემი კომპიუტერი“და გადადით თვისებებში.

დაწერე სერვერი პითონით ნაბიჯი 11
დაწერე სერვერი პითონით ნაბიჯი 11

ნაბიჯი 2. შეინახეთ თქვენი სამუშაო

ეს უნდა იყოს იმავე დირექტორიაში, როგორც სერვერის კოდი.

დაწერე სერვერი პითონით ნაბიჯი 12
დაწერე სერვერი პითონით ნაბიჯი 12

ნაბიჯი 3. გახსენით სამი განსხვავებული ბრძანების ფანჯარა

გადადით დაწყების მენიუში და საძიებო ზოლში ჩაწერეთ "cmd" და დააჭირეთ Enter. გააკეთეთ ეს სამჯერ. ფანჯრები ასე უნდა გამოიყურებოდეს.

ჩაწერეთ სერვერი პითონით ნაბიჯი 13
ჩაწერეთ სერვერი პითონით ნაბიჯი 13

ნაბიჯი 4. გაუშვით პროგრამები

თქვენ უნდა აკრიფოთ ზუსტი გზა ბრძანების ფანჯრის გამოყენებისას. თქვენ უნდა გაუშვათ სერვერის კოდი ჯერ ერთ ბრძანების ფანჯარაში, შემდეგ კი სატესტო კლიენტის კოდი მეორე ორზე. თუ ყველაფერი წარმატებული იყო თქვენ მიიღებთ რაღაც ამ შეტყობინებებს თქვენს ფანჯარაში.

გაფრთხილებები

  • ეს პროგრამა იმუშავებს მხოლოდ მისი გაშვებისას და შეამოწმებს კლიენტებს იმავე ლოკალურ ქსელში.
  • პითონი 2.7.10 მოძველებულია და მისი მხარდაჭერის დასასრულს უახლოვდება. კარგი სერვერების შექმნის გასაგრძელებლად, რეკომენდებულია ამის ნაცვლად დაინსტალირდეს Python 3 -ის უახლესი ვერსია.

გირჩევთ: