關(guān)于風(fēng)訊系統(tǒng)踢人的一些分析_風(fēng)訊Cms教程

      編輯Tag賺U幣
      教程Tag:暫無Tag,歡迎添加,賺取U幣!

      由于本人一直未碰到這個(gè)問題,今晚在給"火星菜鳥"分析時(shí),得出一些結(jié)論,以提供給需要這方面資料的朋友們.

      首先,系統(tǒng)頻繁踢人不是程序問題,至少我在分析代碼的過程中沒發(fā)現(xiàn).出現(xiàn)這種情況的大多數(shù)是把風(fēng)訊系統(tǒng)放到了虛擬主機(jī)上,空間提供商為了顧全自身服務(wù)器的安全運(yùn)作,在一些設(shè)置上采取保護(hù)措施.比如對(duì)"應(yīng)用程序池"實(shí)行限時(shí)回收.經(jīng)過跟蹤測(cè)試我發(fā)現(xiàn),登陸風(fēng)訊系統(tǒng)后默認(rèn)情況下可以遍歷到8個(gè)Sesstion變量:

      GetCode
      Admin_Style_Num
      Admin_Name
      Admin_Pass_Word
      Admin_Parent_Admin
      Admin_Is_Super
      Admin_Pop_List
      Admin_Add_Admin


      被踢的要害原因在于系統(tǒng)的三個(gè)要害Session被釋放了.

      Session("Admin_Name") ,Session("Admin_Pass_Word"),Session("Admin_Is_Super"),Session("Admin_Pop_List")

      Session會(huì)無故丟失嗎?因?yàn)橛脩粢话闶窃诓煌5夭僮髦斜惶叩模钥梢耘懦齋ession超時(shí)的可能(除非部分程序采用了window.open的方式打開窗口,這在少數(shù)情況下會(huì)發(fā)生Session、Cookies丟失的現(xiàn)象)。另外,Session超時(shí)時(shí)間被設(shè)定成10分鐘,不會(huì)這么快就超時(shí)的。

      排除以上可能,我們進(jìn)入下一步:

      設(shè)置性能應(yīng)用程序池設(shè)置

      打開 IIS 治理控制臺(tái),單擊加號(hào)展開本地計(jì)算機(jī)。
      單擊加號(hào)展開“應(yīng)用程序池”文件夾。
      右擊適當(dāng)?shù)膽?yīng)用程序池,然后單擊“屬性”。出現(xiàn)應(yīng)用程序池的屬性對(duì)話框。
      單擊“性能”選項(xiàng)卡,然后設(shè)置適當(dāng)?shù)膽?yīng)用程序池設(shè)置。
      應(yīng)用程序池“屬性”對(duì)話框的“回收”和“性能”選項(xiàng)卡分別如下圖:


      此主題相關(guān)圖片如下:


      此主題相關(guān)圖片如下:

      請(qǐng)分別按上圖所示設(shè)置。使用虛擬空間服務(wù)商提供服務(wù)器的朋友請(qǐng)聯(lián)系服務(wù)商進(jìn)行相應(yīng)設(shè)置。一般情況下應(yīng)用程序池回收后服務(wù)器系統(tǒng)日志里面會(huì)記錄以下日志:

      警告信息:
      為應(yīng)用程序池 'DefaultAppPool' 提供服務(wù)的進(jìn)程 ID 為 3724 的 worker 進(jìn)程已經(jīng)請(qǐng)求回收,因?yàn)?worker 進(jìn)程達(dá)到了答應(yīng)的運(yùn)行時(shí)間限制。

      這樣的話服務(wù)器會(huì)清空所有采用該應(yīng)用程序池的站點(diǎn)的Session對(duì)象。



      按照常規(guī),虛擬空間服務(wù)商不會(huì)把"應(yīng)用程序池"設(shè)置為"空閑超時(shí)"多少分鐘而進(jìn)行回收工作。我估計(jì)一般會(huì)設(shè)置成"內(nèi)存回收",也就是說,該"應(yīng)用程序池"下的站點(diǎn)消耗內(nèi)存達(dá)到服務(wù)商設(shè)置的底線時(shí),服務(wù)器就進(jìn)行應(yīng)用程序池回收工作。因?yàn)槲以趲?火星菜鳥"測(cè)試時(shí)發(fā)現(xiàn),我用自己的代碼測(cè)試比用風(fēng)訊系統(tǒng)時(shí)被踢的次數(shù)明顯很少,但也經(jīng)常被踢。我只是模防被踢原理測(cè)試了一下。以下是測(cè)試代碼:

      文件 test.asp

      <%
      Session("SessionTest") = "Ksir"
      Response.Redirect("view.asp")
      %>

      文件 view.asp

      <meta http-equiv="refresh" content="1">
      <%
      Response.Write(Session("SessionTest"))
      %>

      把這兩個(gè)文件放到服務(wù)器上進(jìn)行測(cè)試時(shí),我得出結(jié)論是:服務(wù)商在應(yīng)用程序池上做了手腳。而且"火星菜鳥"的虛擬服務(wù)器一個(gè)應(yīng)用程序池PID所對(duì)應(yīng)的站點(diǎn)數(shù)目很多,這是很消耗系統(tǒng)內(nèi)存的。9

      查看更多 風(fēng)訊cms教程  風(fēng)訊cms模板

      共2頁上一頁12下一頁
      來源:模板無憂//所屬分類:風(fēng)訊Cms教程/更新時(shí)間:2006-11-12
      相關(guān)風(fēng)訊Cms教程