Skip to main content

FastCGI คืออะไร?

FastCGI เป็นส่วนขยายของอินเตอร์เฟสเกตเวย์ทั่วไป (CGI) ที่พัฒนาโดย บริษัท ที่หมดอายุในขณะนี้ชื่อว่า Open MarketFastCGI มีให้บริการอย่างอิสระเป็นมาตรฐานเปิดมันระบุข้อบกพร่องบางอย่างใน CGI ที่ จำกัด ประสิทธิภาพ

ซึ่งแตกต่างจาก CGI, FastCGI ไม่ได้สร้างกระบวนการใหม่สำหรับการร้องขอแต่ละครั้งดังนั้นการลดค่าใช้จ่ายของการสร้างกระบวนการและการทำลายล้างในแต่ละครั้งที่ได้รับคำขอค่าใช้จ่ายนี้สามารถหลีกเลี่ยงได้โดยใช้อินเทอร์เฟซโปรแกรมแอปพลิเคชัน (APIs) เช่น NetScape Server Application Programming Interface (NSAPI) หรือ Internet Server Application Programming Interface (ISAPI) แต่เนื่องจากสิ่งเหล่านี้เป็นกรรมสิทธิ์ที่จะได้รับการพิจารณาข้อบกพร่องอีกประการหนึ่งของ CGI คือความจริงที่ว่าบางกรณีสำหรับการใช้ซ้ำไม่สามารถรับได้เช่นการเชื่อมต่อกับฐานข้อมูลหรือเทคนิคการแคชการจัดการคำขออาจเร็วขึ้นถึง 30 เท่าโดยใช้ FastCGI ผ่าน CGI ทั่วไป

พร้อม fastCGI สามารถจัดการได้หลายครั้งในการเชื่อมต่อเดียวซึ่งเรียกว่ามัลติเพล็กซ์อีกทางเลือกหนึ่งสามารถใช้การเชื่อมต่อได้หลายครั้งคำขอถูกส่งโดยใช้ File Transfer Protocol (FTP) หรือซ็อกเก็ตการเชื่อมต่อเดียวกันจะถูกใช้เพื่อส่งคืนการตอบกลับ

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

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

เช่นเดียวกับแอปพลิเคชัน CGI สามารถสร้างการตอบสนองจากคำขอ Hypertext Transfer Protocol (HTTP) ดังนั้นจึงสามารถ FastCGI ได้เช่นกันนอกจากนี้ยังจัดการงานต่าง ๆ เช่นการตรวจสอบการรับรองความถูกต้องและการแปลงชนิดข้อมูลงานเหล่านี้ได้รับการจัดการโดยใช้บทบาทซึ่งสามารถเพิ่มและขยายได้อย่างอิสระ

FastCGI นั้นง่ายต่อการเข้าใจและจะทำงานด้วยภาษาการเขียนโปรแกรมเกือบทุกภาษากระบวนการถูกแยกออกดังนั้นเซิร์ฟเวอร์จึงไม่สามารถล่มโดยปัญหาเฉพาะแอปพลิเคชันแอปพลิเคชันใด ๆ ที่สร้างด้วยเฟรมเวิร์ก FastCGI นั้นย้อนหลังด้วยเซิร์ฟเวอร์เก่าที่ใช้ CGIนอกจากนี้ไลบรารีแอปพลิเคชันได้รับการออกแบบมาเพื่อให้การโยกย้ายแอปพลิเคชัน CGI ง่าย