最近のアクセス:
GeneXus アプリケーションの分散キャッシュ

GeneXus では、インメモリキャッシュからデータを取得し、Web アプリケーション (1) と小型デバイスアプリケーション (2) の両方へ渡すことができます。それでは、分散環境やクラウドでアプリケーションを実行している場合にはどうなるでしょうか?
分散環境では、アプリケーションサーバーのローカルキャッシュは役に立ちません。この場合、キャッシュした情報の有効性を保証するために、メモリ オブジェクト キャッシュ システムが必要です。
このシナリオのソリューション (主に、クラウドまたはクラスター環境で実行されるアプリケーション) は、分散キャッシュを使用します。

分散キャッシュでの GeneXus の実装

分散環境では、GeneXus アプリケーションを実行時に設定し、GeneXus の ResultSet キャッシュ処理スマートデバイスのキャッシュ処理でも、RedisMemcached を使用できます。
GeneXus の分散 ResultSet キャッシュ処理スマートデバイスの分散キャッシュ処理を読んで、キャッシュの動作を理解してください。

GeneXus で分散キャッシュを設定する方法

まず、GeneXus でキャッシュを設定します。これは、サーバーのローカルキャッシュを設定する要領で行います (1)、(2)。
分散キャッシュを設定するには、[ Cache Provider ] プロパティを使用します。
注: キャッシュとは、メモリ内のキーと値を格納する領域です。キーと値のペアはアプリケーションのプラットフォームによって異なります。SD アプリケーションでは、キーはデータベーステーブル、値は テーブルの 更新日を表す タイムスタンプです。Web および Web サービスでは、キーは、クエリとそのパラメーター、値はこのクエリの結果セットです。

サーバーとクライアントの設定

サーバーには、Memcached または Redis の実装をインストールする必要があります。たとえば、AWS ElastiCache をインストールします。
クライアントマシンで、対応する API の実装を、Java の場合は classpath で参照し、C# の場合は Web アプリケーションの bin ディレクトリーに含める必要があります。

1.C# と Memcached を使用する場合

まず、BeITMemcached クライアントの DLL が bin ディレクトリーにコピーされていることを確認します。
さらに、Memcached for Windows サーバーをダウンロードします。
[ Cache Provider ] プロパティ[ Cache Location ] プロパティ、(さらに、必要に応じて [ Cache UserName ] プロパティ[ Cache Password ] プロパティ) を設定します。

2.C# と Redis を使用する場合

Redis サーバーをダウンロードし、サービスとして Windows にインストールします。
この例では、ServiceStack クライアントを使用します。
[ Cache Provider ] プロパティ[ Cache Location ] プロパティ、(さらに、必要に応じて [ Cache UserName ] プロパティ[ Cache Password ] プロパティ) を設定します。
ライセンスに関する注記: SAC #40283 を参照してください。

手順 3 -Java と Memcached を使用する場合

spymemcached-2.10.3.jar - spy memcached jar ファイルをダウンロードし、Web アプリケーションの lib ディレクトリーにコピーします。

分散キャッシュ処理を無効化する方法

プログラムによって実現できます。Cache API を参照してください。

注:

当面の間、この機能は次の組み合わせでサポートされます。
  • JAVA - Memcached - 認証がサポートされています
  • .NET - Memcached - 認証はサポートされていません
  • .NET - Redis - 認証がサポートされています

参考情報

(1) [ Database access caching ] プロパティ
(2) スマートデバイスのキャッシュ処理
(3) スマートデバイスの分散キャッシュ処理
(4) GeneXus の分散 ResultSet キャッシュ処理
(5) Cache API



サブページ
Created: 17/05/30 19:01 by Admin Last update: 21/11/07 21:43 by Admin
カテゴリ
Powered by GXwiki 3.0