您好,登錄后才能下訂單哦!
這期內容當中小編將會給大家帶來有關什么是PHP的中間件,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
PHP沒有中間件,導致了對很多麻煩。比如,對數據庫的操作必須要鏈接數據庫,然后做SQL操作。WEB程序直接操作數據庫的方法,這樣會帶來很多 人為因素的事故隱患,以及管理上的麻煩,尤其是對大型的網站應用來說。規范的模式應該是,WEB程序傳遞參數到一個服務程序上,由該服務程序進行判斷并最 終操作數據庫或者其它數據文件,這樣做到了明確權限控制,和業務類型集中管理。去年伴隨著ICE的推出,PHP終于有了可以使用的中間件。在PHP的發展 史上,應該是一個里程碑。
一、什么是中間件?
中間件是一種可復用軟件。中間件在操作系統、網絡和數據庫之上,應用軟件的下層,總的作用是為處于自己上層的應用軟件提供運行與開發的環境,幫助用戶靈 活、高效地開發和集成復雜的應用軟件。
在中間件發展史上,有三款相當成功的中間件。RPC(Remote process call 遠程過程調用),是SUN公司首推,目前在Solaris、Linux、BSD等操作系統下都屬于在Kernel級支持的軟件,支持TCP、UDP、 UNIX-Socket等多種網絡協議,大名鼎鼎的NFS就是依靠RPC開發而成的。WINRPC,是微軟的產品,應該說是仿造RPC,網絡鄰居就是在 WINRPC的基礎上開發的。另外一個是Corba,典型的商業軟件中間件,具有更大的靈活性和易用性。很遺憾,幾乎所有的中間件都缺乏對PHP的支持。 所謂的支持,是沒有相對于這種語言的Lib支持,但可以通過C編寫PHP Extension完成。
中間件工作模式基本上都是:用戶Clinet邏輯功能快—>中間件Clinet模塊 —-網絡—–> 中間件Server模塊—–>用戶Server邏輯功能塊。由此可見中間件完成了最繁雜的部分,在使用中間件的時候,開發者只需要專注于業務 功能邏輯的實現就可以了,大大縮短了開發時間。
二、ICE與PHP
ICE(Internet Communications Engine 網絡通訊引擎),是由Corba原核心成員開發的一個開源中間件,據稱其各種性能完全優于Corba。除此之外,我們第一次見到了直接支持PHP的中間 件。
ICE的安裝,去http://www.zeroc.com/download.html 下載一個Ice針對PHP的安裝包,按照說明安裝上。
ICE的使用:使用Slice(ICE的一種簡單語法腳本),編寫一個xx.ice文件。可以使用slice2cpp或slice2java等生成一個 cpp或java的ICE框架程序,然后在這個框架程序中進行代碼編寫。ICE在PHP的應用繼承了PHP的一貫傳統——簡單,只需要在php.ini中 加載該xx.ice,在PHP中就可以使用了。
ICE在PHP應用中的缺點,無法使用PHP編寫Server端,其實這也是PHP的一個缺陷——沒有完善的多進程和多線程管理機制。因此,Server 端可以采用ICE所支持的其它語言進行編寫,比如JAVA/C++/VB/PYTHON等。
三、ICE為PHP帶來的突破,快速實現類似.Net/Java等Web程序與其它服務程序的通訊功能,從而PHP可以應對更加復雜的應用程序框 架。
上述就是小編為大家分享的什么是PHP的中間件了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。