亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > PHP > 正文

php中fastcgi_finish_request的介紹及其實現非阻塞的代碼

2020-03-22 18:28:03
字體:
來源:轉載
供稿:網友
本篇文章給大家帶來的內容是關于php中fastcgi_finish_request的介紹及其實現非阻塞的代碼,有一定的參考價值,有需要的朋友可以參考一下,希望對你有所幫助。

前言

在實際項目中經常會有這樣的需求,對于前端發過來的請求,需要在后端進行長時間的處理,但為了讓使用者有更好的體驗,為了讓PHP在后端處理長時間任務時不阻塞,快速響應頁面請求,因此在這里對fastcgi_finish_request的應用進行總結歸納。當然php實現非阻塞的方式有很多種,比如異步腳本、swoole,但個人認為fastcgi_finish_request最為簡單方便。

基本應用fastcgi_finish_request介紹

(PHP 5 = 5.3.3, PHP 7)

fastcgi_finish_request — 沖刷(flush)所有響應的數據給客戶端

boolean fastcgi_finish_request ( void )

函數沖刷(flush)所有響應的數據給客戶端并結束請求。 這使得客戶端結束連接后,需要大量時間運行的任務能夠繼續運行。

返回值

成功時返回 TRUE, 或者在失敗時返回 FALSE

注意問題

PHP 與 Web 服務器使用了PHP-FPM(FastCGI進程管理器),那通過fastcgi_finish_request() 函數能馬上結束會話,而 PHP 線程可以繼續在后臺運行。也就是說只針對php-fpm的進程管理方式才能使用該函數

只要代碼運行到這個位置,就已經斷開請求返回參數給客戶端了。接下來的代碼都和客戶端沒有關系了。也就是說對于輸出在頁面的內容必須放在fastcgi_finish_request函數之前

fastcgi_finish_request()結束客戶端連接之后,運行時間依然會受max_execution_time超時時間的影響,也就是說如果預計到代碼在后端執行時間比較久,還是要設定set_time_limit(0)

在高并發下執行時間過久也會導致fastcgi進程不夠用,不能及時釋放,就會爆502錯誤了。

應用
echo program start... file_put_contents( /tmp/garylog.log , start-time: .date( Y-m-d H:i:s ). /n , FILE_APPEND);fastcgi_finish_request();sleep(1);// set_time_limit(0);// sleep(150);$num = 25;$num += 1;sleep(5);echo debug... file_put_contents( /tmp/garylog.log , start-proceed: .$num. ,時間 .date( Y-m-d H:i:s ). /n , FILE_APPEND);sleep(10);file_put_contents( /tmp/garylog.log , end-time: .date( Y-m-d H:i:s ). /n , FILE_APPEND);

運行測試

381344182-5b7e62f4232d3_articlex.png

997751714-5b7e6310816d1_articlex.png

兼容非php-fpm

從代碼的可移植性講的話, 可以在代碼中附上如下代碼:

 if (!function_exists( fastcgi_finish_request )) { function fastcgi_finish_request() { }

不會造成代碼部署在非fpm環境下造成問題.

保證進程單一運行

對于上面說到的問題:在高并發下執行時間過久也會導致fastcgi進程不夠用,不能及時釋放。同時我們的需求僅僅是為了起到觸發的作用,并不需要每次運行,那么可以考慮使用下面的方法,避免重復占用進程。

 $processId = realpath(__FILE__) . - . get_html' target='_blank'>class($this);$filename = md5($processId);$file = /tmp/ .$filename;if(!file_exists($filename)){ file_put_contents($file, getmypid());}else{ return true; 
獨孤九賤(5)_ThinkPHP5視頻教程

ThinkPHP是國內最流行的中文PHP開發框架,也是您Web項目的最佳選擇?!禫eVb.com獨孤九賤(5)-ThinkPHP5視頻教程》課程以ThinkPHP5最新版本為例,從最基本的框架常識開始,將...

Peter-Zhu 2017-05-16 12:03:57


獨孤九賤(4)_PHP視頻教程

江湖傳言:PHP是世界上最好的編程語言。真的是這樣嗎?這個梗究竟是從哪來的?學會本課程,你就會明白了。PHP 出品的PHP入門系統教學視頻,完全從初學者的角度出發,絕不玩虛的,一切以實用、有用...

Peter-Zhu 2017-03-20 22:47:17


獨孤九賤(1)_HTML5視頻教程

《VeVb.com原創html5視頻教程》課程特色:php 原創幽默段子系列課程,以惡搞,段子為主題風格的php視頻教程!輕松的教學風格,簡短的教學模式,讓同學們在不知不覺中,學會了HTML知識。...

Peter-Zhu 2017-03-13 10:15:11


ThinkPHP5實戰之[教學管理系統]

本套教程,以一個真實的學校教學管理系統為案例,手把手教會您如何在一張白紙上,從零開始,一步一步的用ThinkPHP5框架快速開發出一個商業項目。

Peter-Zhu 2017-07-24 16:48:56


PHP入門視頻教程之一周學會PHP

所有計算機語言的學習都要從基礎開始,《PHP入門視頻教程之一周學會PHP》不僅是PHP的基礎部分更主要的是PHP語言的核心技術,是學習PHP必須掌握的內容,任何PHP項目的實現都離不開這部分的內容,通...

PHP教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
色综合老司机第九色激情| 精品久久久久久久久中文字幕| 国产v综合v亚洲欧美久久| 91精品视频专区| 久久久999国产精品| 日韩精品有码在线观看| 国产亚洲精品久久久久久牛牛| 91丨九色丨国产在线| 久久亚洲精品国产亚洲老地址| 欧美成人sm免费视频| 日韩欧美福利视频| 日韩精品极品在线观看播放免费视频| 91在线观看免费网站| 欧美成人久久久| 午夜精品久久久久久久久久久久久| www.欧美精品一二三区| 久久久爽爽爽美女图片| 91国产中文字幕| 国产精品久久久久久久久久久不卡| 91精品国产高清久久久久久| 国产欧美精品一区二区三区-老狼| 久久男人av资源网站| 亚洲乱码国产乱码精品精| 亚洲国产另类 国产精品国产免费| 91久久久久久| 欧美专区福利在线| 欧美性jizz18性欧美| 国产精品美女呻吟| 亚洲精品电影网站| 亚洲国产精品大全| 亚洲欧洲xxxx| 久久国产精品久久久久久久久久| 久久精品国产欧美激情| 国产精品第七十二页| 亚洲成人av资源网| 日韩在线观看免费| 国产精品日日做人人爱| 久久久久久国产免费| 国产成人av在线播放| 国产精品久久久久免费a∨大胸| 亚洲精品一区中文字幕乱码| 亚洲综合精品一区二区| 欧美日韩亚洲视频一区| 98午夜经典影视| 亚洲理论片在线观看| 欧美视频裸体精品| 日韩成人中文字幕在线观看| 亚洲一区亚洲二区亚洲三区| 欧美亚洲另类视频| 久久久久久久久久久成人| 宅男66日本亚洲欧美视频| 欧美大片va欧美在线播放| 成人免费视频在线观看超级碰| 亚洲欧洲激情在线| 欧美激情欧美激情| 国产精品免费小视频| 色综合男人天堂| 国产主播欧美精品| 精品久久久久久久久久| 亚洲最大av在线| 国产亚洲xxx| 国内免费精品永久在线视频| 91精品国产综合久久香蕉922| 欧美精品日韩三级| 亚洲色图激情小说| 久久这里只有精品99| 欧美疯狂性受xxxxx另类| 国产成人免费av| 国产91精品视频在线观看| 亚洲成av人乱码色午夜| 亚洲字幕在线观看| 亚洲女同性videos| 日韩欧美国产一区二区| 欧美日韩午夜视频在线观看| 欧亚精品中文字幕| 久久精品国产亚洲精品| 亚洲色图13p| 国产一区私人高清影院| 欧美日韩国产中文精品字幕自在自线| 国产欧美日韩精品在线观看| 久久精品99无色码中文字幕| 欧美电影《睫毛膏》| 欧美精品激情在线| 一区二区三区国产视频| 欧美日韩在线视频观看| 91精品国产综合久久香蕉| 热久久免费国产视频| 欧美小视频在线观看| 国产69精品久久久久99| 国产主播在线一区| 色阁综合伊人av| 久久久精品一区二区三区| 久久艹在线视频| 成人国产在线视频| 在线观看国产欧美| 亚洲人成网站在线播| 国产精品96久久久久久| 欧美一区二粉嫩精品国产一线天| 在线看国产精品| 日韩在线视频一区| 欧美网站在线观看| 亚洲成人教育av| 欧美国产第一页| 欧美一区二区三区精品电影| 亚洲免费视频在线观看| 日韩视频在线免费观看| 成人美女免费网站视频| 国产精品国产三级国产aⅴ浪潮| 国产精品美乳在线观看| 欧美天天综合色影久久精品| www.日韩免费| 亚洲深夜福利在线| 国产精品福利片| 欧美成人亚洲成人| 98午夜经典影视| 亚洲欧美综合图区| 久久久免费观看| 日韩av资源在线播放| 成人网在线免费看| 国产91对白在线播放| 国产一区二区三区在线看| 亚洲精品一区中文字幕乱码| 精品视频在线播放色网色视频| 91在线精品播放| 欧美日韩一区免费| 97视频在线免费观看| 九九热最新视频//这里只有精品| 欧美性xxxxhd| 亚洲午夜av久久乱码| 久久久精品日本| 日韩国产在线播放| 国产一区二区黄| 国产九九精品视频| 亚洲乱码国产乱码精品精| 国产精品狠色婷| 亚洲无限乱码一二三四麻| 久久精品国产清自在天天线| 久久久久久伊人| 亚洲国产日韩欧美在线99| 亚洲电影av在线| 国产福利精品视频| 成人欧美一区二区三区黑人| 国产午夜一区二区| 国产精品小说在线| 国产精国产精品| 在线播放亚洲激情| 国产精品久久久久久久久久东京| 国产精品成久久久久三级| 久久精品国产96久久久香蕉| 2018日韩中文字幕| 热久久免费视频精品| 亚洲色图五月天| 国产精品啪视频| 尤物yw午夜国产精品视频明星| www.久久撸.com| 久久久av一区| 午夜精品久久久久久久99热| 一区二区三区回区在观看免费视频| 91久久久久久| 国产成人高潮免费观看精品| 亚洲2020天天堂在线观看| 日韩精品免费观看| 日韩电影中文 亚洲精品乱码| 亚洲二区在线播放视频|