PHP開發(fā)者:你GLAMMP了嗎?
原創(chuàng)【51CTO綜合報(bào)道】網(wǎng)站開發(fā)黃金組合LAMP(Linux+Apache+MySQL+PHP)已經(jīng)流行了好幾年。即LAMP之后,PHP社區(qū)最近開始推廣起GLAMMP組合。這個(gè)組合在LAMP之上又加進(jìn)來一個(gè)G和一個(gè)M。這新加進(jìn)來的兩個(gè)字母各是什么意思呢?
G——Gearman
Gearman是Brad Fitzpatrick 的一個(gè)作品,用Perl寫的任務(wù)調(diào)度程序,提供一個(gè)服務(wù)器端和多種語言的客戶端接口,包括 C/Perl/Python/Ruby 等。
gearman可以用在各個(gè)方面,最簡單就是在不同語言之間架起一座橋梁。比如你可能希望你的php程序調(diào)用一個(gè)c 函數(shù),那么用gearman就可以實(shí)現(xiàn)了,當(dāng)然了實(shí)際你可以通過寫一個(gè)php擴(kuò)展來實(shí)現(xiàn)同樣的工作,但是比如你要php調(diào)用java,perl,或者python那么,gearman就非常棒了。
gearman另一個(gè)應(yīng)用方面是負(fù)載分擔(dān),你可以將worker放在不同的服務(wù)器(或者一些列服務(wù)器)上,比如你的php程序需要圖片轉(zhuǎn)換,但是不希望本地服務(wù)器有太多的這樣圖片轉(zhuǎn)換的進(jìn)程,那么你可以建立一系列服務(wù)器,在上面加載worker處理圖片轉(zhuǎn)換。這樣你的web服務(wù)器將不受圖片轉(zhuǎn)換的影響,同時(shí)你得到了負(fù)載均衡的功能,因?yàn)閖ob server會(huì)在請(qǐng)求到來的時(shí)候,將這個(gè)請(qǐng)求發(fā)給空閑的worker.同樣對(duì)于多核的服務(wù)器,你可以在同一機(jī)器上創(chuàng)建同樣數(shù)目的worker. 你可能擔(dān)心,job server處于一個(gè)中心,那么這會(huì)是一個(gè)單點(diǎn)的瓶頸,如果死了,會(huì)怎么樣?對(duì)于這樣的情況,你可以運(yùn)行多個(gè)job server。這樣如果一個(gè)job server down了,client和worker會(huì)自動(dòng)遷移到另一臺(tái)job server上。
M——Memcached
memcached是由Danga Interactive開發(fā)的,高性能的,分布式的內(nèi)存對(duì)象緩存系統(tǒng),用于在動(dòng)態(tài)應(yīng)用中減少數(shù)據(jù)庫負(fù)載,提升訪問速度。
PHP社區(qū)的看法是,LAMP組合已經(jīng)越來越不能滿足很多網(wǎng)站的需要,其他工具的介入是必然趨勢(shì)。數(shù)據(jù)庫方面,號(hào)稱memcached殺手應(yīng)用的Drizzle有可能會(huì)替代MySQL。在MySQL被Sun收購的那一年,人們關(guān)心MySQL是否將會(huì)繼續(xù)讓LAMP架構(gòu)發(fā)揚(yáng)光大;而在Sun又被甲骨文收購,MySQL創(chuàng)始人宣布創(chuàng)建開源數(shù)據(jù)庫聯(lián)盟,MySQL即將四分五裂之際,Drizzle是否能夠做為MySQL的延伸,令GLAMMP發(fā)揚(yáng)光大下去呢?
不過我也許說錯(cuò)了,這樣的話,GLAMMP大概應(yīng)該改名叫做GLAMPD才是。
【編輯推薦】















 
 
 


 
 
 
 