問題タブ [spring-data-gemfire]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
xml - gemfire ローカル リージョンの作成
以下のように cache.xml があります。
以下のような例外があります
schema_reference.4: スキーマ ドキュメント 'http://www.springframework.org/schema/gemfire/spring-gemfire-1.2.xsd' の読み取りに失敗しました。1) ドキュメントが見つからなかったためです。2) ドキュメントを読み取ることができませんでした。3) ドキュメントのルート要素は ではありません。
cvc-complex-type.2.4.c: 一致するワイルドカードは厳密ですが、要素「gfe:cache」の宣言が見つかりません。
以下のように xsd の別のバージョンに変更しようとしましたが、うまくいきませんでした。
http://www.springframework.org/schema/gemfire/spring-gemfire.xsd
と
http://www.springframework.org/schema/gemfire/spring-gemfire-1.1.xsd
と
http://www.springframework.org/schema/gemfire/spring-gemfire-1.2.xsd
上記のすべての試行の後、バージョン 1.1 に変更すると、別の問題が発生することがわかりました
cvc-complex-type.2.4.c: 一致するワイルドカードは厳密ですが、要素「gfe:local-region」の宣言が見つかりません。
この問題を解決するにはどうすればよいですか?
java - Gemfire の設定の問題
以下のように、gemfire をセットアップするための xml 構成ファイルがあります。
この構成ファイルを読み込もうとすると、以下の例外が表示されます..
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197) 原因: org.springframework.beans.factory.BeanCreationException: 名前 'region1' の Bean の作成中にエラーが発生しました: Bean への参照を解決できません ' Bean プロパティ 'cache' の設定中の gemfireCache'; ネストされた例外は org.springframework.beans.factory.NoSuchBeanDefinitionException: 'gemfireCache' という名前の Bean が org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:328) で org.springframework.beans.factory で定義されていませんorg.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory の .support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:106)。
org.springframework.beans.factory.NoSuchBeanDefinitionException: org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanDefinition(DefaultListableBeanFactory.java:529) の org.springframework.beans.factory.support で「gemfireCache」という名前の Bean が定義されていません。 org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:277) の AbstractBeanFactory.getMergedLocalBeanDefinition(AbstractBeanFactory.java:1095) org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java: 193) org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:322) ... 41 もっと見る
からid属性を削除すると
そしてただ与える
それは正常に動作します。id 属性を指定すると、t がスローされます
java - 値が gemfire キャッシュに入力されていません
以下のように2つのxml構成ファイルがあります
app-context.xml:
テストキャッシュ.xml
そして、 TestCache.javaというテスト クラスがあります。
しかし、実際には何もキャッシュされていないようです。retrieveSomeValues() メソッドへの両方のメソッド呼び出しで、メソッドはキャッシュから値を取得する代わりに実際に実行されています。
上記のテストクラスで何が問題なのかを知ることができますか? @Cacheable を使用して、retriveSomeValues() メソッドの値をキャッシュする方法を教えてください。
java - キャッシュにプロパティに存続する時間を追加します
LocalRegion1または上記のように定義されたキャッシュの存続時間を追加するにはどうすればよいですか?24時間ごとにキャッシュを完全に更新し、サーバーから新しいデータを取得したいと思います。サーバーからデータを取得してローカルに保存するローカルキャッシュを使用しています。
java - Spring Data Gemfire 構成はロケーターに接続しませんか?
ターゲットの展開環境で既に実行されている Gemfire ロケーターとキャッシュサーバー プロセスがあるとします。ターゲット デプロイメント環境は、クライアント/サーバー トポロジを使用します。
Gemfire キャッシュを使用したい Spring 3.1 MVC アプリケーションがあります。Spring Data Gemfire 1.2.2 および Gemfire 6.6.1 を使用しています
だから私は私のspring.xml
外部 JAR 依存関係がすべて Maven などで正しく定義されていると仮定します。また、上記のプロパティ値を定義するプロパティ ファイルが読み込まれているとします。プロパティは、locators
すでに開始されている Gemfire ロケーターの IP とポートを使用するように定義されています。
MVC アプリケーションで Bean に@Cacheable
. これらの構成により、アプリケーション サーバーでロケーターが起動され、Gemfire グリッドに接続され、Gemfire キャッシュ サーバーに追加myCacheRegion
されcacheManager
、新しいキャッシュ リージョンを使用できるようになるはずです。
BeanCreationException
Spring の起動時にロケーターへの接続に失敗したために発生した s を取得しています。
しかし、ターゲット環境にデプロイすると、ロケーター プロセスが接続できないため、Gemfire Bean の作成に失敗します。私は何が欠けていますか?
java - Gemfire ローカル キャッシュの有効期限
ローカルの Gemfire キャッシングを持つ Web サービスに埋め込まれた JAR があります。私が解決しようとしている問題は、このデータの有効期限です。
各エントリの有効期限を秒単位で設定するカスタム有効期限タイマーを作成し、リスナーを関連付けて afterInvalidate(EntryEvent e) をチェックしました。
これが私の春の地域宣言です
私がやろうとしていることは、セットアップ方法とは少し異なります。私がやろうとしているのは、最初のエントリがその地域に置かれると、その地域での存続時間が欲しいということです。ローカルの gemfire リージョンで Time to Live を実行することは可能ですか?
java - Spring Data Gemfire 使用時の @Region アノテーション
Spring Data と Gemfire を使用してデータ サービスを開発しています。注釈あり
POJO を保存する Gemfire リージョンを指定します。
構成された Gemfire リージョンの名前が必要です。Gemfire クラスターは別のチームによって管理される予定であり、リージョン名は完全に構成可能であるべきだと考えているため、リージョンの名前をハードコーディングするのは悪い習慣だと思います。
地域名のハードコーディングを避けるためのより良い方法はありますか?
replication - レプリケートされたリージョンをホストする Gemfire クラスターに新しいサーバーを追加する
レプリケートされたリージョンをホストする 1 台のサーバーの Gemfire クラスターがあります。クライアントサーバーアーキテクチャを使用しています。
リージョンにはデータが事前にロードされます。
次に、新しいサーバーをクラスターに追加します。Pulse と gfsh で確認できます。一部の新しいクライアントは新しいサーバーに接続されますが、空のデータを受け取ります。 データは、最初のサーバーから新たに開始されたサーバーに複製されません。
2番目のサーバーのcacheserver.logには、次のような行が表示されます
1 台目のサーバーからのデータ レプリケーションだと思いますが、2 台目のサーバーにはデータが表示されないようです。
解決策はありますか?
更新: インデックスと関係があることに気付きました。次のように定義されたインデックスがあります
インデックスを削除すると、すべて正常に動作します。しかし、インデックスが有効になっている場合、キャッシュ サーバーは引き続きインデックスを使用しようとしますが、インデックスはレプリケートされないように見えます。したがって、新しく起動したサーバーからの空のデータ。