日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
php中共享內(nèi)存是什么意思

本教程操作環(huán)境:windows10系統(tǒng)、PHP7.1版、DELL G3電腦

共享內(nèi)存是一種在相同機(jī)器中兩個(gè)正在運(yùn)行的進(jìn)程之間共享和傳遞數(shù)據(jù)的有效方式,不同進(jìn)程之間共享的內(nèi)存通常安排為同一段物理內(nèi)存;

顧名思義,共享內(nèi)存就是允許兩個(gè)不相關(guān)的進(jìn)程訪問同一個(gè)邏輯內(nèi)存。

一個(gè)進(jìn)程可創(chuàng)建一個(gè)可供其他進(jìn)程訪問的內(nèi)存段,只要它分配了正確的權(quán)限。每個(gè)內(nèi)存段擁有一個(gè)惟一的 ID(稱為 shmid),這個(gè) ID 指向一個(gè)物理內(nèi)存區(qū)域,其他進(jìn)程可在該區(qū)域操作它。創(chuàng)建并提供了合適的權(quán)限之后,同一臺(tái)機(jī)器中的其他進(jìn)程就可以操作這些內(nèi)存段:讀取、寫入和刪除,如果某個(gè)進(jìn)程向共享內(nèi)存寫入數(shù)據(jù),所做的改動(dòng)將立即影響到可以訪問同一段共享內(nèi)存的任何其他進(jìn)程。

這表明使用 C 語言編寫的應(yīng)用程序可與使用其他語言(比如 Java 或 PHP)編寫的應(yīng)用程序共享信息。共享內(nèi)存在針對(duì)大部分語言的實(shí)現(xiàn)中得到了廣泛使用,所以訪問應(yīng)該不是問題。要理解信息,我們可以使用一種標(biāo)準(zhǔn)格式,比如 XML 或 JSON。

共享內(nèi)存的使用是一種在進(jìn)程之間交換數(shù)據(jù)的快速方法,主要因?yàn)樵趧?chuàng)建內(nèi)存段之后傳遞數(shù)據(jù),不會(huì)涉及內(nèi)核。這種方法常常稱為進(jìn)程間通信 (IPC)。其他 IPC 方法包括管道、消息隊(duì)列、RPC 和套接字。當(dāng)使用需要彼此通信的應(yīng)用程序的生態(tài)系統(tǒng)時(shí),這種在應(yīng)用程序之間快速、可靠地交換數(shù)據(jù)的能力非常有用。取決于生態(tài)系統(tǒng)的大小,使用數(shù)據(jù)庫在應(yīng)用程序之間交換信息的常用方法常常會(huì)導(dǎo)致查詢緩慢,甚至 I/O 阻塞。使用共享內(nèi)存,沒有 I/O 會(huì)減緩開發(fā)人員的進(jìn)度。

共享內(nèi)存并未提供同步機(jī)制,也就是說,在第一個(gè)進(jìn)程結(jié)束對(duì)共享內(nèi)存的寫操作之前,并無自動(dòng)機(jī)制可以阻止第二個(gè)進(jìn)程開始對(duì)它進(jìn)行讀取。所以我們通常需要用其他的機(jī)制來同步對(duì)共享內(nèi)存的訪問。

本文的提議非常簡單,學(xué)習(xí)如何使用 PHP 創(chuàng)建和操作共享內(nèi)存段,使用它們存儲(chǔ)可供其他應(yīng)用程序使用的數(shù)據(jù)集。即使沒有使用共享內(nèi)存交換數(shù)據(jù)的計(jì)劃,它本身也在許多好處,因?yàn)樗箲?yīng)用程序能夠遠(yuǎn)離 I/O 問題。將數(shù)據(jù)集直接存儲(chǔ)在內(nèi)存中具有諸多優(yōu)勢,從 Web 服務(wù)數(shù)據(jù)緩存到會(huì)話共享。它是一個(gè)非常有用的概念,每個(gè) PHP 開發(fā)人員都應(yīng)該知道。

使用共享內(nèi)存的優(yōu)缺點(diǎn)

1、優(yōu)點(diǎn):我們可以看到使用共享內(nèi)存進(jìn)行進(jìn)程間的通信真的是非常方便,而且函數(shù)的接口也簡單,數(shù)據(jù)的共享還使進(jìn)程間的數(shù)據(jù)不用傳送,而是直接訪問內(nèi)存,也加快了程序的效率。同時(shí),它也不像匿名管道那樣要求通信的進(jìn)程有一定的父子關(guān)系。

2、缺點(diǎn):共享內(nèi)存沒有提供同步的機(jī)制,這使得我們?cè)谑褂霉蚕韮?nèi)存進(jìn)行進(jìn)程間通信時(shí),往往要借助其他的手段來進(jìn)行進(jìn)程間的同步工作。

我們可以使用共享內(nèi)存作為一種獨(dú)特的存儲(chǔ)選項(xiàng),提供快速讀/寫操作和進(jìn)程互操作性等優(yōu)勢。對(duì)于 Web 應(yīng)用程序,這意味著:

緩存存儲(chǔ)(數(shù)據(jù)庫查詢、Web 服務(wù)數(shù)據(jù)、外部數(shù)據(jù))

會(huì)話存儲(chǔ)

應(yīng)用程序之間的數(shù)據(jù)交換

此存儲(chǔ)技術(shù)不僅對(duì)緩存有用,也對(duì)應(yīng)用程序之間的數(shù)據(jù)交換也有用,只要數(shù)據(jù)以兩端都可讀的格式存儲(chǔ)。不要低估共享內(nèi)存在 Web 應(yīng)用程序中的力量??刹捎迷S多不同的方式來巧妙地實(shí)現(xiàn)這種存儲(chǔ),惟一的限制是開發(fā)人員的創(chuàng)造力和技能。


名稱欄目:php中共享內(nèi)存是什么意思
標(biāo)題網(wǎng)址:http://www.dlmjj.cn/article/cdeigdc.html