明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

php4的session技巧評(píng)述(3)

[摘要]總的感覺php的session功能基本上還能用一用,還算方便,省了很多自己處理 cookie的麻煩事情。php的session管理還是基于文件的,默認(rèn)的是在/tmp目錄 下生成一個(gè)和session id同名的session文件,在這個(gè)文件里保存register的 session data。s...
總的感覺php的session功能基本上還能用一用,還算方便,省了很多自己處理  
cookie的麻煩事情。php的session管理還是基于文件的,默認(rèn)的是在/tmp目錄  
下生成一個(gè)和session id同名的session文件,在這個(gè)文件里保存register的  
session data。session有生存期,在/usr/local/lib/php.ini里可以設(shè)置。  
  
效率應(yīng)該算馬馬虎虎了,畢竟還是要文件操作,雖然是/tmp的。對(duì)于服務(wù)量很  
大的應(yīng)用會(huì)在/tmp里生成很多session文件,分特。。。  
對(duì)于分布式應(yīng)用呢?幾臺(tái)web server一起服務(wù)?招倒是有,session文件的目錄  
是可配置的,把所有的session文件搞到一個(gè)共享的nfs目錄就完事了。但是php  
生成唯一文件的時(shí)候有沒有考慮過nfs的特殊處理?我沒仔細(xì)去看源碼,估計(jì)會(huì)  
出問題,雖然幾率很小...  
  
倒是可以做個(gè)session keeper的damon,session數(shù)據(jù)可以通過hash表的方式存  
貯在內(nèi)存里,以u(píng)dp服務(wù)方式(效率高,lan里面包丟失率。┩瓿蓅ession的生
成,檢索,結(jié)束,取置session變量等操作,這樣多臺(tái)web server可以共享
session信息。服務(wù)端和客戶端的函數(shù)我都做了,現(xiàn)在問題是怎樣把客戶端的函
數(shù)加到php里面,或者php對(duì)動(dòng)態(tài)庫函數(shù)調(diào)用的支持怎么樣,這些東西manual里
面都很不詳盡,沒有相關(guān)的例子。

BTW:由于語法的不嚴(yán)格,php的函數(shù)返回容易造成二義性,比如strpos,沒有
匹配返回0,但是匹配的position可能是0的,faint~...