71   การใช้งานฟังก์ชั่น fastcgi_finish_request()​

>> รู้หมือไร่ <<
 
หากคุณใช้ PHP ในแบบ FastCGI (php-fpm) จะมีฟังก์ชั่นพิเศษชื่อว่า

fastcgi_finish_request()​

ซึ่งจะทำการ "ตัดการเชื่อมต่อ" กับ client
แต่ไม่จบการทำงานของ script
มีประโยชน์มากในกรณีที่คุณต้องการให้ script ทำงานอะไรสักอย่างที่ใช้เวลานาน เช่น
ส่งเมล์, ย่อขยายขนาดรูปภาพ, แปลงไฟล์วีดีโอ
แต่ก็ไม่ต้องการให้ผู้ใช้ต้องมานั่งรอ และต้องการที่จะส่งหน้าผลลัพธ์ (หรือข้อมูลอื่นๆ เช่น json)
กลับไปให้ผู้ใช้ในทันที
 
// ทำอะไรบางอย่างก่อนหน้า
header('HTTP/1.1 202 Accepted');
fastcgi_finish_request();
// ทำอะไรบางอย่างที่ใช้เวลานาน

ซึ่งโดยปกติ หากไม่มีฟังก์ชั่นนี้ อาจจะต้องใช้วิธีอื่นเช่น ใช้ queue หรือวิธีอื่นๆ ที่ยุ่งยากมากกว่า
ดังนั้น 

fastcgi_finish_request()​

ถือว่าเป็นตัวช่วยแสนวิเศษที่อาจจะทำให้ชีวิตของคุณง่ายขึ้น
 
http://php.net/manual/en/function.fastcgi-finish-request.php

Credit: Admin(phpinfo.in.th)
Back to Top