みなさんこんにちは。私の名前はスレイマンです。今日のビデオでは、どのように使用できるかを見ていきます。 NCache Java WebアプリケーションやWeb APIのSpringセッションプロバイダとして使用できます。Spring MVCアプリケーション、Spring Bootアプリケーション、またはマルチサーバー環境にデプロイされるRESTful APIを作成している場合は、このビデオが役立ちます。
デフォルトでは、Springセッションはアプリケーションまたはサーバーのメモリに保存されます。そのため、サーバーが再起動すると、セッションデータも失われます。 NCache この問題を解決するために、キャッシュクラスタ内に複製されたセッションストアを作成し、そこにすべてのセッションデータを保存し、すべてのサーバーで同時に利用できるようにします。
ここに図があります。これは通常、 NCache エンタープライズ環境に展開されています。キャッシュサーバーで構成される独立したキャッシュ層があることに注目してください。その上にキャッシュクライアントで構成されるアプリケーション層があり、最後にデータベース層が下にあります。
はい。セットアップに進む前に、現在のプロジェクトレイアウトをお見せしたいと思います。ご覧のとおり、ここにSpring Bootアプリケーションがあります。現時点では、 NCache セッションストアプロバイダとしてプラグインされています。その手順を順を追って説明します。ここにはインデックスページとノートページの2つのページがあります。インデックスページは、ログイン登録ページです。ログインすると、ユーザーノートを表示したり追加したりできます。
コントローラー クラスには、エンドポイントがいくつか定義されていることも確認できます。ログイン登録エンドポイントでは、セッション属性、ユーザー名、ユーザーの認証ステータスを設定しています。ログアウトエンドポイントでは、session.invalidate() を実行します。これにより、キャッシュ クラスタとアプリケーションの両方からセッションが無効になります。最後に、ノートの表示セクションがあります。セッション自体にも保存されているノートのマップがあります。
すぐに NCache 管理センターこれを更新します。demoCache という名前でキャッシュが既に設定されています。ご覧のとおり、Docker インスタンスにデプロイされた単一のサーバーノードです。統計オプションを開いて、データがないことを確認します。完璧です。わかりました。それでは、セットアップに進みましょう。
皆さん、これは本当に簡単な設定です。必要な手順はたった2つです。コーチングは一切必要ありません。まず最初に、 NCache Spring Session のプロジェクトへの依存関係。したがって、依存関係を見つけるには、 NCache ウェブサイト。開発者、Java統合の順に進むと、ここから 春のセッションこれはMavenセントラルリポジトリを指しています。そのため、常に最新のアーティファクト名とそのバージョンがわかります。では、これをコピーして pom.xml ファイルにソフトウェアを指定する必要があります。
<dependency>
<groupId>com.alachisoft.ncache</groupId>
<artifactId>ncache-spring-session</artifactId>
<version>5.3.6</version>
</dependency>
それを再読み込みします。そして、外部ライブラリをもう一度確認します。 ncache クライアント, ncacheランタイム, ncache-spring-session完璧です。それでは次のステップに進みましょう。
最後のステップは、メインクラスにアノテーションを追加することです。 NCache HTTPセッション。これは通常のセッションストレージ用です。オプションで、Enableを使用することもできます。 NCache インデックス付きHTTPセッションストレージは、再びインデックス付きセッションストレージです。今のところは最初のものを使用します。また、最大非アクティブ間隔など、アノテーションに渡すパラメータがいくつかあることがわかります。キャッシュ名も渡すことができます。
@有効にするNCacheHttpSession(maxInactiveInterval = 100)
セッションを無効化する()
Session.setAttribute("authUser", username)
Session.getAttribute("authUser")
それでは早速やってみましょう。メインクラスに入って、Enableを追加します。 NCache HTTPセッション。キャッシュ名(私の場合はdemo cache)を渡します。最後に、最大非アクティブ間隔(100秒)を渡します。
つまり、100秒後には、キャッシュクラスタとアプリケーションの両方からセッションが無効化されるということです。ただし、デフォルトではdemoCacheが想定されているようなので、これは冗長なようです。そこで、これを削除します。これで、アプリケーションを起動する準備が整いました。
それでは、これを始めます。その間、統計情報を並べて表示します。このウィンドウを分解して、最小化します。現時点ではカウントがゼロであることを覚えておいてください。ローカルホストがロードされるとすぐに新しいセッションが作成され、キャッシュクラスタ内に保存されるはずです。そして、まさにその通りになっています。カウントが増えました。
ここからログを見ると、まさにその通りになっているのがわかります。では、ここでユーザーを作成します。ログインしたら、メモセクションに移動します。セッションが維持されているので、ログイン状態は維持されているはずです。そして、初めてのメモを書きます。ユーザーのメモはセッション属性として保存していたことを思い出してください。つまり、ページ間を移動してもメモは保持されるはずです。そして、まさにその通りになっています。
さて、最後に、ログアウトします。ログアウトしたとき、session.invalidate() を呼び出したことを覚えているでしょうか。これは明示的に定義しました。ですから、セッションがクリアされることを期待していました。そして、まさにその通りになりました。キャッシュクラスタから、セッションが削除され、新しいセッションが作成されたことが確認できました。ですから、同じユーザーで再度ログインすると、ログインできるはずです。しかし、メモを開くと、メモがクリアされているはずです。ログをざっと見てみると、まさにその通りになっています。セッションが見つかり、セッションが削除され、セッションが見つからなかったので、新しいセッションが作成されました。これはまさに期待通りの動作です。
デモンストレーションは以上です。ご視聴ありがとうございました。さらに詳しく知りたい場合は、 NCacheについては デモを予約する 詳しく知るには 建築、 その 機能を使用この動画では、戦略、そしてそれをアプリケーションにどのように組み込むかについて解説します。ご視聴いただきありがとうございました。
©著作権 Alachisoft 2002 - . All rights reserved. NCache はダイヤテック株式会社の登録商標です。