3 วิธีในการเขียนเซิร์ฟเวอร์ด้วย Python

สารบัญ:

3 วิธีในการเขียนเซิร์ฟเวอร์ด้วย Python
3 วิธีในการเขียนเซิร์ฟเวอร์ด้วย Python

วีดีโอ: 3 วิธีในการเขียนเซิร์ฟเวอร์ด้วย Python

วีดีโอ: 3 วิธีในการเขียนเซิร์ฟเวอร์ด้วย Python
วีดีโอ: EP.2 สอนใช้งาน Outlook ในการส่งอีเมล์ยังไง คนไม่เป็นก็เรียนได้ | iLikeiT.info 2024, เมษายน
Anonim

การสร้างเซิร์ฟเวอร์ตั้งแต่เริ่มต้นเป็นงานใหญ่ อย่างไรก็ตาม การทำเช่นนี้สามารถพัฒนาทักษะการเขียนโปรแกรมของคุณได้อย่างมาก และช่วยให้คุณสามารถปรับเปลี่ยนตามความต้องการของคุณได้ บทช่วยสอนนี้จะใช้ python และโปรแกรมซ็อกเก็ตระดับต่ำเพื่อสร้างเซิร์ฟเวอร์เพื่อให้ลูกค้าสามารถสื่อสารกันได้ สิ่งนี้จะครอบคลุมเฉพาะกระบวนการบน windows เท่านั้น ข้อมูลบางส่วนจะได้รับในคำแนะนำ แต่ถ้าคุณต้องการรหัสเพียงอย่างเดียว รหัสจะมีให้ในรูป (หมายเหตุ: คำแนะนำที่นำเสนอนี้เป็นพื้นฐานเท่านั้น)

ขั้นตอน

วิธีที่ 1 จาก 3: การติดตั้ง Python

เขียนเซิร์ฟเวอร์ด้วย Python ขั้นตอนที่ 1
เขียนเซิร์ฟเวอร์ด้วย Python ขั้นตอนที่ 1

ขั้นตอนที่ 1. ดาวน์โหลด Python

ไปที่เว็บไซต์หลักของ python และดาวน์โหลด Python 2.7.10 หลังจากที่ดาวน์โหลดแล้วให้ดำเนินการตามขั้นตอนของโปรแกรมติดตั้ง python ด้วยการตั้งค่าเริ่มต้น ลิงค์นี้มีให้ที่นี่

เขียนเซิร์ฟเวอร์ด้วย Python ขั้นตอนที่ 2
เขียนเซิร์ฟเวอร์ด้วย Python ขั้นตอนที่ 2

ขั้นตอนที่ 2 เรียกใช้ IDLE (Python GUI)

ไปที่โฟลเดอร์ Python 2.7 และเรียกใช้ IDLE (Python GUI) ตอนนี้ python ควรอยู่ในเมนูเริ่มต้นของคุณซึ่งมี IDLE อยู่

เขียนเซิร์ฟเวอร์ด้วย Python ขั้นตอนที่ 3
เขียนเซิร์ฟเวอร์ด้วย Python ขั้นตอนที่ 3

ขั้นตอนที่ 3 สร้างไฟล์ใหม่

ไปที่ ไฟล์ ที่มุมบนซ้ายของหน้าต่างที่เพิ่งเปิดใหม่ และเลือก ไฟล์ใหม่ คุณควรมีหน้าต่างว่างเปิดขึ้นพร้อมชื่อ Untitled

วิธีที่ 2 จาก 3: การสร้างเซิร์ฟเวอร์

เขียนเซิร์ฟเวอร์ด้วย Python ขั้นตอนที่ 4
เขียนเซิร์ฟเวอร์ด้วย Python ขั้นตอนที่ 4

ขั้นตอนที่ 1 นำเข้าโมดูลที่จำเป็น

สองโมดูลที่จำเป็นสำหรับรหัสนี้คือ "ซ็อกเก็ต" และ "เธรด" สามารถทำได้โดยพิมพ์ในบรรทัดแรก “from socket import *” และในบรรทัดถัดไป “import threading”

เขียนเซิร์ฟเวอร์ด้วย Python ขั้นตอนที่ 5
เขียนเซิร์ฟเวอร์ด้วย Python ขั้นตอนที่ 5

ขั้นตอนที่ 2 สร้างเธรดใหม่

สิ่งนี้จะจัดการการจับคู่ลูกค้า 2 รายเข้าด้วยกัน เธรดคือกระบวนการที่สามารถทำงานได้ในขณะที่โปรแกรมหลักทำงาน พิมพ์ให้ตรงตามรูปที่แสดง สิ่งนี้จะตั้งค่าตัวแปรในเธรดเพื่อให้สามารถเรียกได้ในภายหลัง

เขียนเซิร์ฟเวอร์ด้วย Python ขั้นตอนที่ 6
เขียนเซิร์ฟเวอร์ด้วย Python ขั้นตอนที่ 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 ของคุณด้วยหมายเลขพอร์ตที่แน่นอน (หมายเลขพอร์ตสามารถเป็นอะไรก็ได้ แต่โดยปกติแล้วจะเป็นสิ่งที่สูงเพื่อหลีกเลี่ยงการใช้กระบวนการอื่นหรือใช้หมายเลขพอร์ตที่สงวนไว้)

เขียนเซิร์ฟเวอร์ด้วย Python ขั้นตอนที่ 8
เขียนเซิร์ฟเวอร์ด้วย Python ขั้นตอนที่ 8

ขั้นตอนที่ 5. สร้างกระบวนการเซิร์ฟเวอร์หลัก

สิ่งนี้จะใช้ในที่อยู่ไคลเอนต์และเริ่มต้นเธรดที่สร้างขึ้นก่อนหน้านี้ ซึ่งรวมถึงรอรับข้อมูลจากบัฟเฟอร์และรับที่อยู่ไคลเอนต์และบันทึกเพื่อใช้ในเธรด วิธีรับข้อมูลจากซ็อกเก็ตของคุณคือการเรียกโดย "socketName.recvfrom (1024)" ตัวเลขที่นี่เป็นเพียงจำนวนไบต์ที่จะอ่านในแต่ละครั้ง ในตัวอย่างนี้ เรากำลังจัดเก็บไว้ในตัวแปรที่เรียกว่า userAddr และเมื่อสิ่งนี้เกิดขึ้น คุณสามารถบันทึกที่อยู่นี้ในรายการที่สร้างขึ้นในขั้นตอนที่ 4 คำสั่ง if จะสร้างเธรดของห้องถ้าคนสองคนเชื่อมต่อกันและจะสร้างห้องเท่านั้น เมื่อสองการเชื่อมต่อที่แตกต่างกันเกิดขึ้น

เขียนเซิร์ฟเวอร์ด้วย Python ขั้นตอนที่ 9
เขียนเซิร์ฟเวอร์ด้วย Python ขั้นตอนที่ 9

ขั้นตอนที่ 6 บันทึกงานของคุณ

ควรทำในไดเร็กทอรีที่เข้าถึงได้ง่ายเพื่อให้สามารถเข้าถึงได้ง่ายสำหรับการทดสอบ

วิธีที่ 3 จาก 3: การทดสอบ

เขียนเซิร์ฟเวอร์ด้วย Python ขั้นตอนที่ 10
เขียนเซิร์ฟเวอร์ด้วย Python ขั้นตอนที่ 10

ขั้นตอนที่ 1 สร้างไคลเอนต์ทดสอบ

นี่เป็นไคลเอนต์พื้นฐานที่จะจัดการเฉพาะว่าเซิร์ฟเวอร์ได้ส่งข้อมูลของไคลเอนต์อื่นไปยังไคลเอนต์ปัจจุบันหรือไม่ โปรดทราบว่าไม่เหมือนกับรหัสเซิร์ฟเวอร์ รหัสนี้ต้องใช้ชื่อเซิร์ฟเวอร์ หากคุณกำลังใช้งานทั้งหมดนี้บนคอมพิวเตอร์เครื่องเดียว ชื่อเซิร์ฟเวอร์ควรเป็นชื่อพีซีของคุณ คุณสามารถค้นหาชื่อคอมพิวเตอร์ของคุณได้โดยคลิกขวาที่ My Computer และไปที่คุณสมบัติ

เขียนเซิร์ฟเวอร์ด้วย Python ขั้นตอนที่ 11
เขียนเซิร์ฟเวอร์ด้วย Python ขั้นตอนที่ 11

ขั้นตอนที่ 2 บันทึกงานของคุณ

ควรอยู่ในไดเร็กทอรีเดียวกันกับรหัสเซิร์ฟเวอร์

เขียนเซิร์ฟเวอร์ด้วย Python ขั้นตอนที่ 12
เขียนเซิร์ฟเวอร์ด้วย Python ขั้นตอนที่ 12

ขั้นตอนที่ 3 เปิดหน้าต่างคำสั่งที่แตกต่างกันสามหน้าต่าง

ไปที่เมนูเริ่มต้นและในแถบค้นหาให้พิมพ์ "cmd" แล้วกด Enter ทำเช่นนี้สามครั้ง หน้าต่างควรมีลักษณะเช่นนี้

เขียนเซิร์ฟเวอร์ด้วย Python ขั้นตอนที่ 13
เขียนเซิร์ฟเวอร์ด้วย Python ขั้นตอนที่ 13

ขั้นตอนที่ 4 เรียกใช้โปรแกรม

คุณจะต้องพิมพ์เส้นทางที่แน่นอนเมื่อใช้หน้าต่างคำสั่ง คุณจะต้องเรียกใช้โค้ดเซิร์ฟเวอร์ก่อนในหน้าต่างคำสั่งหนึ่ง จากนั้นจึงเรียกใช้โค้ดไคลเอ็นต์ทดสอบในอีกสองหน้าต่างที่เหลือ หากทุกอย่างสำเร็จ คุณจะได้รับข้อความเหล่านี้ในหน้าต่างของคุณ

คำเตือน

  • โปรแกรมนี้จะทำงานเมื่อรันและทดสอบไคลเอนต์บนเครือข่ายท้องถิ่นเดียวกันเท่านั้น
  • Python 2.7.10 ล้าสมัยและใกล้จะสิ้นสุดการสนับสนุน หากต้องการสร้างเซิร์ฟเวอร์ที่ดีต่อไป ขอแนะนำให้ติดตั้ง Python 3 เวอร์ชันล่าสุดแทน

แนะนำ: