成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

ASP.NET中的session存儲模式運用

開發 后端
本文介紹了asp.net中的session存儲的三種模式的具體運用。在asp.net中的Session存儲方式不象asp那樣單一,一共提供了三種存儲方式。

在asp.net中的Session存儲方式不象asp那樣單一,一共提供了三種存儲方式,由于最近一個2000多人使用的web軟件出現了故障,用戶每天早上在某一時刻出現難以登陸現象,接著Session丟值出現,只有重啟IIS,或機器.這時程序恢復正常了.整天都不會出現同樣的問題 ,但是第二天依舊!這種現象持續了好幾天,我檢查了一下日志文件,高峰每秒訪問人數大概20人左右,同時大概100多人在線,以后訪問人數還會增加,為了解決這個怪問題,先從軟件著手,故而三種方式都應用了一番。

打開web.config文件

  1. < sessionState   
  2.         mode="InProc" 
  3.         stateConnectionString="tcpip=127.0.0.1:42424" 
  4.         sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes" 
  5.         cookieless="false"   
  6.         timeout="20"   
  7. /> 

其中默認的mode是InProc類型,這種模式和以前ASP模式一樣,就是服務器將Session信息存儲在IIS進程當中,當IIS關閉、重起后這些進程信息都會丟失,但這種模式的性能***(具體沒測,看書上說),這種模式是asp.net的默認方式。

由于這種模式出現了故障,當時我的考慮就是由于訪問量過大的原因,導致Inetinfo.exe進程崩潰。用戶難以登陸以致Session丟值出現故障,我采用了另外一種Session的存儲方式把Session信息存儲在進程外。

首先,打開管理工具找到服務,找到名為:asp.net State Service的服務,啟動它.并且改成自動啟動。這時你可以在任務管理器中看到一個名為aspnet_state.exe的進程。這就是我們保存session信息的進程。

然后,回到web.config文件中把Mode的值改為StateServer,保存文件。OK.

  1. < sessionState   
  2.         mode="StateServer" 
  3.         stateConnectionString="tcpip=127.0.0.1:42424" 
  4.         sqlConnectionString="data source=192.10.78.76;User id=sa;password=sa" 
  5.         cookieless="false"   
  6.         timeout="20"   
  7. /> 

這種模式當我們重起IIS,保存的session值不會丟失。另外這種方式還可以把信息保存在其他機器的進程中,不過還要更改 stateConnectionString="tcpip=127.0.0.1:42424",IP地址改為其他機器即可。

另外還采取了其他的措施.比如把數據庫和Web服務器分開,數據庫服務器不提供WEB服務,Web服務器不提供數據庫服務,

然后把連接池擴大,由于asp.net中ADO.NET數據訪問默認連接池數量為100, 后來我擴大到6000順便把寫法加上來

“Server=(local);Database=rgs;password=sa;user ID=sa;Max Pool Size =6000; Min Pool Size =5;Pooling=True”

***把Machine.config中的ProcessModel中的memoryLimit改為95,默認為60,表示內存占用超過60%后iis進程會自動重起。接著還做寫其它一些優化IIS的方法,把注冊表的IIS緩存加大等等 。

當我做完這些優化步驟后,整個軟件運行比較良好,第二天沒有發現堵塞的現象,但是第三天情況又出現了,實在沒辦法,我采取了***一種ASP.NET中的session存儲方法就是將Session存儲在SQLServer中,我想這樣穩定性應該強些。

要使用SQLServer中,首先在會話狀態的SQLServer的計算機上,運行InstallSqlState.sql或InstallPersistSqlState.sql(默認位置:systemroot\Microsoft.NET\Framework\versionNumber下面)兩個腳本都創建一個名為ASPState的數據庫,兩個腳本的差別在于放置ASPStateTempApplication和ASPStageTempSessions表的位置。InstallSqlState.sql腳本將這些表添加到TempDB數據庫,該數據庫在計算機重起時將丟失數據,而InstallPersistSqlState.sql腳本將這些表添加到ASPState數據庫,該數據庫重啟時保留會話數據。

然后在應用程序的web.config文件中,把< sessionState>元素的mode屬性設置為SQLServer,***將sqlConnectionString屬性設置為Integrated Security=SSPI;data source=serverName;

  1. < sessionState mode="SQLServer" 
  2. sqlConnectionString=" Integrated Security=SSPI;data source=dataserver;" 
  3. cookieless="false" 
  4. timeout="20"/>  
  5. < /sessionState>  
  6.  

如果部署在其他機器上可以更改為,加上用戶名和密碼

  1. < sessionState   
  2.         mode="SQLServer" 
  3.         stateConnectionString="tcpip=127.0.0.1:42424" 
  4.         sqlConnectionString="data source=192.10.78.76;User id=sa;password=sa" 
  5.         cookieless="false"   
  6.         timeout="20"   
  7. /> 

這樣部署完成了,如果不想使用這種可以刪除掉,只要在相應的目錄(systemroot\Microsoft.NET\Framework\versionNumber)找到UninstallPersistSqlState.sql或者UninstallSqlState.sql文件運行即可。這樣就介紹了ASP.NET中的session存儲模式。

***要注意的是,無論使用StateServer或者SQLServer模式時,當使用session轉換對象時,注意對象要先序列化,就是在類前加上Serializable,否則會出現錯誤!

【編輯推薦】

  1. ASP.NET中使用AJAX中的方式
  2. ASP.NET中WCF服務與ASMX服務的兼容性
  3. ASP.NET中using的用法三則
  4. ASP.NET表單介紹
  5. ASP.NET中Get和Post的用法

責任編輯:book05 來源: cnblogs
相關推薦

2009-07-24 10:41:00

ASP.NET Ses

2009-07-20 17:21:43

Session狀態ASP.NET

2009-07-29 10:19:48

Session StaASP.NET

2009-07-28 16:57:50

ASP.NET Ses

2009-07-23 18:56:50

ASP.NET Ses

2009-08-03 10:07:20

ASP.NET Ses

2009-07-24 10:41:00

ASP.NET Ses

2009-08-05 18:30:36

Session和CooASP.NET表單

2009-07-22 18:02:26

ASP.NET Ses

2009-07-23 16:59:31

ASP.NET認證Form表單

2009-08-05 17:54:04

ASP.NET運行模式

2009-07-20 12:59:53

ASP.NET MVCASP.NET框架的功

2009-07-31 18:16:09

ASP.NET中的Se

2009-07-24 10:10:22

ASP.NET

2009-07-24 16:17:42

WebRequestEASP.NET

2009-08-03 09:45:14

ASP.NET Ses

2009-07-23 16:28:55

2009-07-24 14:03:02

IIS ASP.NET

2009-07-30 13:30:56

ASP.NET開發模式

2009-08-03 09:17:30

ASP.NET Ses
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 在线资源视频 | 亚洲精品久久久一区二区三区 | 亚洲视频一区在线观看 | 综合色导航 | 精品久久影院 | 国产精品久久国产精品99 | 日韩天堂av | 中文字幕中文字幕 | 性色av香蕉一区二区 | 性一区| 日韩高清一区二区 | 成人免费激情视频 | 香蕉久久av | 欧美日韩综合一区 | 中文字幕 在线观看 | 国产精品污www一区二区三区 | 国产精品国产精品国产专区不片 | 欧美日韩综合一区 | 成人精品鲁一区一区二区 | 91高清免费观看 | 欧美三区在线观看 | 亚洲福利av | 午夜一区 | 久久在线精品 | 97av在线| 91在线资源 | 91久久精品一区二区二区 | 久久久久久影院 | 日日干夜夜操天天操 | 大象一区 | 国内精品一区二区 | 日韩免费一区 | 久久久久国产 | 久草网视频 | 狠狠爱综合网 | 欧美v片| 成人3d动漫一区二区三区91 | av网站在线播放 | 亚洲精品一区中文字幕乱码 | 黄色毛片在线播放 | 天天摸天天干 |