MongoDB-ASP.NET-Session-State-Store

提供: MonoBook
2015年12月1日 (火) 12:09時点におけるimported>Administratorによる版 (→‎インストール)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
ナビゲーションに移動 検索に移動

MongoDB-ASP.NET-Session-State-Storeとは、MongoDBセッション情報を保持するASP.NETセッションプロバイダーである[1]

概要[編集 | ソースを編集]

Redis関連のセッションプロバイダーを色々試みたがMonoでの動作が不安定だったので諦めてこちらを利用してみた。 Redisほどの速度は期待できないものの少し試した限りでは安定しているようである。 MongoDB冗長化関連の機能は特筆すべきものがあるのでもう少し検証してみようと思う。

インストール[編集 | ソースを編集]

NuGetから入れる。

Web.configにConnectionStringを設定する。

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <!-- 抜粋 -->
  <connectionStrings>
    <add name="MongoSessionServices" connectionString="mongodb://localhost"/>
  </connectionStrings>
  <!-- 抜粋 -->
</configuration>

Web.configにセッションプロバイダーを設定する。 ここで指定したDBは無ければ勝手に作られる模様。

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <!-- 抜粋 -->
  <system.web>
    <sessionState mode="Custom" customProvider="MongoSessionStateProvider">
      <providers>
        <add name="MongoSessionStateProvider"
             type="MongoSessionStateStore.MongoSessionStateStore"
             connectionStringName="MongoSessionServices"
             maxUpsertAttempts="220"
             msWaitingForAttempt="500"
             AutoCreateTTLIndex="true"
             WriteConcern="W1"
             Journal="false"
             BSONDefaultSerialize="true"
             databaseName="SessionState2"
             collectionName="Sessions2" />
      </providers>
    </sessionState>
  </system.web>
  <!-- 抜粋 -->
</configuration>

おわり

関連項目[編集 | ソースを編集]

参考文献[編集 | ソースを編集]