成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

PHP進(jìn)程通信

haobowd / 986人閱讀

摘要:一進(jìn)程間通信理解間進(jìn)程通信機(jī)制,先了解下進(jìn)程間有哪些通訊機(jī)制歷史發(fā)展按照歷史來源主要有兩大塊的管道,,信號的消息隊列,共享內(nèi)存,信號燈。信號量主要作為進(jìn)程間,以及進(jìn)程內(nèi)部線程之間的通訊手段。主要依賴,兼容擴(kuò)展實現(xiàn)方式的進(jìn)程間通信之消息隊列。

PHP間進(jìn)程如何通信,PHP相關(guān)的服務(wù)的IPC是實現(xiàn)方式,IPC的思想如何用到項目中。

一、linux進(jìn)程間通信

理解php間進(jìn)程通信機(jī)制,先了解下linux進(jìn)程間有哪些通訊機(jī)制

1.1 歷史發(fā)展

linux ipc 按照歷史來源主要有兩大塊

AT&T的system v IPc:管道,F(xiàn)IFO,信號

BSD的socket Ipc :消息隊列,共享內(nèi)存,信號燈。

1.2 主要方式

總結(jié)起來主要有以下六種方式

1:管道【pipe】:主要是有關(guān)系的進(jìn)程之間的通訊,例如ls xx |grep xx。

2:信號【signal】:通過中間進(jìn)程來管理進(jìn)程之間的通訊,屬于比較復(fù)雜的進(jìn)程間通訊方式。

3:消息隊列【message】:消息的鏈接表,進(jìn)程生產(chǎn)和消費消費消息隊列。

優(yōu)勢:克服了信號量承載的消息少,管道只能用規(guī)定的字節(jié)流,同時受到緩沖區(qū)大小的約束的問題 (而且讀寫是有隊列的,有一個寫,就只有一個能讀到,比較簡單,不需要同步和互斥)

缺點:太過簡單,處理復(fù)雜情況可能會造成饑餓現(xiàn)象

4:共享內(nèi)存。多個進(jìn)程訪問同一個內(nèi)存區(qū)。最快的IPC方式,但是需要處理進(jìn)程間的同步和互斥。 同時也是當(dāng)下使用最廣泛的IPC,例如nginx,框架通訊,配置中心都是該原理。

5:信號量【semaphore】:主要作為進(jìn)程間,以及進(jìn)程內(nèi)部線程之間的通訊手段。nginx早起的channel機(jī)制就類似于信號量

6:套接字【socket】:不同機(jī)器之間的通訊手段。處于tcp-》socket-》http之間的一個協(xié)議。

二、php進(jìn)程通訊有哪些方式

最好的語言php有哪些IPC的方式

pcntl擴(kuò)展:主要的進(jìn)程擴(kuò)展,完成進(jìn)程的創(chuàng)建,子進(jìn)程的創(chuàng)建,也是當(dāng)前使用比較廣的多進(jìn)程。

posix擴(kuò)展:完成posix兼容機(jī)通用api,如獲取進(jìn)程id,殺死進(jìn)程等。主要依賴 IEEE 1003.1 (POSIX.1) ,兼容posix

sysvmsg擴(kuò)展:實現(xiàn)system v方式的進(jìn)程間通信之消息隊列。

sysvsem擴(kuò)展:實現(xiàn)system v方式的信號量。

sysvshm擴(kuò)展:實現(xiàn)system v方式的共享內(nèi)存。

sockets擴(kuò)展:實現(xiàn)socket通信,跨機(jī)器,跨平臺。

php也有一些封裝好的異步進(jìn)程處理框架:例如swoole,workman等

三、與php相關(guān)的IPC 3.1 nginx的IPC

nginx的ipc主要有兩種:

早期:channel 機(jī)制:類似于信號,標(biāo)示不同進(jìn)程以及進(jìn)程與子進(jìn)程之間的套接字,同時具有繼承關(guān)系。
缺點:過于復(fù)雜,也產(chǎn)生了過多的套接字,造成存儲浪費。

當(dāng)前主流:共享內(nèi)存方式:快,寫入數(shù)據(jù)少,方便。

具體可以參見這篇文章:寫的非常好 https://rocfang.gitbooks.io/d...

3.2 apache的IPC

apache:https://arrow.apache.org/docs...

四、實際應(yīng)用中的IPC

在平時的項目中,類似于php和linux的IPC的思想大量存在,深入理解。

socket方式:不同項目間通訊,跨機(jī)微服務(wù)等等,也是使用最廣泛的IPC。

共享內(nèi)存方式:配置中心,公共數(shù)據(jù)庫,甚至git都可以看做共享內(nèi)存的衍生;`共享內(nèi)存就必須要注意同步和互斥。

cache :是共享內(nèi)存和管道結(jié)合的思想

項目流式架構(gòu):管道的方式,可以大量的節(jié)省空間和時間的通訊方式。

【轉(zhuǎn)載請注明:php進(jìn)程通信 | 靠譜崔小拽 】

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/23157.html

相關(guān)文章

  • 深入剖析 Web 服務(wù)器與 PHP 應(yīng)用之間的通信機(jī)制 - 掌握 CGI 和 FastCGI 協(xié)議的

    摘要:深入?yún)f(xié)議從功能上來講,協(xié)議已經(jīng)完全能夠解決服務(wù)器與應(yīng)用之間的數(shù)據(jù)通信問題。消息頭信息主要的消息頭信息如下用于表示協(xié)議版本號。從服務(wù)器發(fā)送到應(yīng)用,表示中止一個處理中的請求。另外我們還需要明確一點就是服務(wù)器與進(jìn)程間通信是無序的。 本文首發(fā)于 深入剖析 Web 服務(wù)器與 PHP 應(yīng)用之間的通信機(jī)制 - 掌握 CGI 和 FastCGI 協(xié)議的運行原理,轉(zhuǎn)載請注明出處! 身為一名使用 PHP ...

    mumumu 評論0 收藏0
  • PHP-FPM 與 Nginx 的通信機(jī)制總結(jié)

    摘要:介紹協(xié)議與協(xié)議每種動態(tài)語言等的代碼文件需要通過對應(yīng)的解析器才能被服務(wù)器識別,而協(xié)議就是用來使解釋器與服務(wù)器可以互相通信。而這樣的面向連接的協(xié)議,可以更好的保證通信的正確性和完整性。在各自的配置文件里設(shè)置用戶通過以上配置即可完成與的通信。 PHP-FPM 介紹 CGI 協(xié)議與 FastCGI 協(xié)議每種動態(tài)語言( PHP,Python 等)的代碼文件需要通過對應(yīng)的解析器才能被服務(wù)器識別,而...

    garfileo 評論0 收藏0
  • PHP-FPM 與 Nginx 的通信機(jī)制總結(jié)

    摘要:介紹協(xié)議與協(xié)議每種動態(tài)語言等的代碼文件需要通過對應(yīng)的解析器才能被服務(wù)器識別,而協(xié)議就是用來使解釋器與服務(wù)器可以互相通信。而這樣的面向連接的協(xié)議,可以更好的保證通信的正確性和完整性。在各自的配置文件里設(shè)置用戶通過以上配置即可完成與的通信。 PHP-FPM 介紹 CGI 協(xié)議與 FastCGI 協(xié)議每種動態(tài)語言( PHP,Python 等)的代碼文件需要通過對應(yīng)的解析器才能被服務(wù)器識別,而...

    Turbo 評論0 收藏0
  • PHP-FPM 與 Nginx 的通信機(jī)制總結(jié)

    摘要:而這樣的面向連接的協(xié)議,可以更好的保證通信的正確性和完整性。在各自的配置文件里設(shè)置用戶通過以上配置即可完成與的通信。個人總結(jié),若有不對,敬請指正 PHP-FPM 介紹 CGI 協(xié)議與 FastCGI 協(xié)議 每種動態(tài)語言( PHP,Python 等)的代碼文件需要通過對應(yīng)的解析器才能被服務(wù)器識別,而 CGI 協(xié)議就是用來使解釋器與服務(wù)器可以互相通信。PHP 文件在服務(wù)器上的解析需要用到 ...

    gekylin 評論0 收藏0
  • PHP-FPM 與 Nginx 的通信機(jī)制總結(jié)

    摘要:而這樣的面向連接的協(xié)議,可以更好的保證通信的正確性和完整性。在各自的配置文件里設(shè)置用戶通過以上配置即可完成與的通信。個人總結(jié),若有不對,敬請指正 PHP-FPM 介紹 CGI 協(xié)議與 FastCGI 協(xié)議 每種動態(tài)語言( PHP,Python 等)的代碼文件需要通過對應(yīng)的解析器才能被服務(wù)器識別,而 CGI 協(xié)議就是用來使解釋器與服務(wù)器可以互相通信。PHP 文件在服務(wù)器上的解析需要用到 ...

    whidy 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<