RPC-Remote Procedure Call

โปรโตคอล RPC อำนวยความสะดวกในการสื่อสารระหว่างคอมพิวเตอร์ในเครือข่าย

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

RPC ทำงานอย่างไร

ใน RPC เครื่องส่งจะทำการร้องขอในรูปแบบของขั้นตอนการทำงานหรือการเรียกเมธอด RPC จะแปลงคำเรียกเหล่านี้เป็นคำขอและส่งผ่านเครือข่ายไปยังปลายทางที่ต้องการ ผู้รับ RPC จะดำเนินการตามคำขอตามชื่อขั้นตอนและรายการอาร์กิวเมนต์และส่งการตอบกลับไปยังผู้ส่งเมื่อเสร็จสิ้น แอ็พพลิเคชัน RPC มักใช้โมดูลซอฟต์แวร์ที่เรียกว่า "พร็อกซี่" และ "stubs" ซึ่งเป็นนายหน้าสำหรับการโทรทางไกลและทำให้โปรแกรมเมอร์เหล่านั้นปรากฏในโปรแกรมเมอร์เหมือนกับการเรียกใช้โพรซีเดอร์ในระบบ

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

RPC Technologies

RPC เป็นเทคนิคการเขียนโปรแกรมทั่วไปในโลกของยูนิกซ์ตั้งแต่ปี 1990 โปรโตคอล RPC ถูกนำมาใช้ในระบบคอมพิวเตอร์ Distributed Computing ของมูลนิธิซอฟต์แวร์โอเพ่นซอร์สและไลบรารี Open Network Computing ของ Sun Microsystems ซึ่งมีการใช้งานกันอย่างแพร่หลาย ตัวอย่างล่าสุดของเทคโนโลยี RPC ได้แก่ Microsoft DCOM, Java RMI และ XML-RPC และ SOAP