設(shè)置ntp服務(wù)器同步時(shí)間 如何實(shí)現(xiàn)多臺(tái)web服務(wù)器共享session數(shù)據(jù)?
如何實(shí)現(xiàn)多臺(tái)web服務(wù)器共享session數(shù)據(jù)?這個(gè)項(xiàng)目一開始設(shè)計(jì)得“非常大”,考慮了很多負(fù)載平衡問題,比如使用nginx將PHP請(qǐng)求分配給幾個(gè)運(yùn)行phpfastcgi的獨(dú)立服務(wù)器。除了在每臺(tái)phpf
如何實(shí)現(xiàn)多臺(tái)web服務(wù)器共享session數(shù)據(jù)?
這個(gè)項(xiàng)目一開始設(shè)計(jì)得“非常大”,考慮了很多負(fù)載平衡問題,比如使用nginx將PHP請(qǐng)求分配給幾個(gè)運(yùn)行phpfastcgi的獨(dú)立服務(wù)器。除了在每臺(tái)phpfastcgi服務(wù)器上保存一份程序外,還有一個(gè)亟待解決的問題。由于phpfastcgi進(jìn)程運(yùn)行在不同的服務(wù)器上,因此默認(rèn)情況下,PHP會(huì)話數(shù)據(jù)存儲(chǔ)在每臺(tái)服務(wù)器上。這樣,如果nginx在一個(gè)PHP請(qǐng)求之后向另一個(gè)集群中的另一個(gè)phpfastcgi服務(wù)器發(fā)送一個(gè)PHP請(qǐng)求,那么會(huì)話將丟失。經(jīng)過一系列的考慮,項(xiàng)目組決定使用一個(gè)獨(dú)立的memcached服務(wù)器來存儲(chǔ)整個(gè)項(xiàng)目的phpsession數(shù)據(jù),然后通過重寫PHP的session處理函數(shù)將數(shù)據(jù)讀寫到memcached服務(wù)器上,然后解決每個(gè)phpfastcgi中的session異步問題。
該項(xiàng)目的背景基本上就是上面提到的那些。我們先來談?wù)勏嚓P(guān)的網(wǎng)絡(luò)環(huán)境,然后進(jìn)入具體的配置和實(shí)現(xiàn)過程:
1。一臺(tái)nginx服務(wù)器,IP地址:172.16.236.208
2。兩個(gè)phpfastcgi服務(wù)器,IP:172.16.236.210172.16.236.211
3。一個(gè)memcached服務(wù)器,IP:172.16.236.220