開発Blog

intra-mart Advent Calendar 2013 第19日:iAPでキャッシュしている所は何処だ!?

投稿日:

この記事は、intra-mart Advent Calendar 2013 第19日の記事です。

AdventCalendarの新機軸!?=我がチーム担当機能の宣伝の一環「認可機構(im-authz)の紹介シリーズ」は、ここぞとばかり まだまだ続きますよー。(聞こえてますかー、北陸の貴方〜)

今回は、パフォーマンス向上に欠かせないキャッシュについて。
どこでどのような情報がキャッシュされているのかをご紹介いたします。

intra-mart Accel Platformでは、新たに搭載された認可機構(im-authz)によりきめ細かなアクセス制御が可能になりました。
im-authz は、画面やデータ、各サービスにおける権限チェックを統括して行うため、あらゆる機能から使用される機能です。
しかし、認可の判断結果が確定するまでには多くの処理があり、各処理においてファイルやデータベースへのアクセスが発生します。

例えば、intra-mart Accel Platform にログインした後に表示されるグローバルナビや、各機能へのリンクを表示するサイトマップでは、アクセス権限のあるリンクのみを表示しているため、各リンクごとに認可の判断処理が行われます。

ここでは、メニューを例として、認可が行われるまでの処理の流れを紹介します。

intra-mart Accel Platformでは、アクセス制御の判断を高速化するために、大きく以下の4つについてキャッシュしています。

  1. ルーティング設定のキャッシュ

    • メニューアイテムに登録されている「URL+引数」を「リソースURI」「アクション」に変換するマッピングをキャッシュします。
  2. リソースグループ設定のキャッシュ

    • 「リソースURI」を「認可リソースグループ」に変換するマッピングをキャッシュします。
  3. リソース閉塞状態のキャッシュ

    • 「認可リソースグループ」1件あたりの閉塞状態をキャッシュします。
  4. ポリシー設定のキャッシュ

    • 「認可リソースグループ」「認可サブジェクトグループ」「アクション」から取得した「ポリシー」の状態をキャッシュします。

このようにして、intra-mart Accel Platformでは、各処理のうちデータの更新頻度が低く、参照頻度が高いものについて、キャッシュを利用して高速化しています。

認可に関するキャッシュの詳細は、認可仕様書 の 認可のキャッシュ設定 をご参照ください。

なお、上述の2, 4 は、intra-mart Accel Platform をインストールした直後の状態では、画面・処理 (service) のリソースタイプのみキャッシュが行われます。他のリソースタイプでキャッシュを行う場合は、別途設定が必要です。
リソースタイプごとのキャッシュ設定については、「設定ファイルリファレンス」の「 リソースタイプ拡張設定 」および「 認可ポリシーキャッシュ対象設定 」を参照してください。

その他、 intra-mart Accel Platform上でのキャッシュに関する情報は以下をご参照ください。

これら資料には、キャッシュするオブジェクトの単位 や キャッシュサイズを見積もるための計算式も記載しております。
実際に運用されるシステムのデータ容量やアクセス頻度・傾向を元に、適切なサイジングを行っていただければと思います。

-開発Blog

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

intra-mart Advent Calendar 2013 第13日:ログイン後に任意の画面を開く方法

この記事は、intra-mart Advent Calendar 2013 第13日の記事です。 intra-mart Advent Calendar 2013 第1日目の「iAPでもiWPみたいにU …

no image

業務スケルトン

こんにちは。開発本部の大西です。 きょうは、昨年11月末にリリースしたe Builder Application Developer/e Builder Version 7.1 Patch3に機能追加 …

no image

Apache Solr & IM-ContentsSearch

こんにちは、開発本部の大西です。 先日開催された、Open intra-mart勉強会で弊社コンサルティングチームの清さんが発表した Apache SolrとIM-ContentsSearchの資料を …

no image

J2EEフレームワークに関するFAQ

※下記内容は、過去のintra-mart(Ver4.3以前)に関する内容です。最新のintra-martでは、異なる情報であることがありますので、ご注意ください。 J2EEフレームワークに関する技術的 …

no image

トイレの空き状況の見える化システム

初めまして、開発本部の矢野と申します。 この記事では今までとはちょっと違い、intra-mart 社の普段の雰囲気を感じていただくために、製品の説明や紹介ではなく、私がつい最近取り組んだ日常的な仕事に …

まだデータがありません。

RSSRSSRSSRSS