Существует ли инструмент для проверки / отладки содержимого кэшей Oracle Coherence? - PullRequest
14 голосов
/ 09 мая 2011

Я новичок в Oracle Coherence и пытаюсь найти инструмент разработки / отладки, который помог бы мне проверить мое приложение.

Такое ощущение, что должен быть прямой способ просмотра ключей и / или значений кэша (и, возможно, даже выполнения специальных запросов и функций?). Однако я не могу найти ничего, кроме (Oracle Coherence Cache Viewer) [http://www.sl.com/products/coherenceviewer.shtml].

В противном случае я могу написать что-нибудь для опроса Coherence JMX MBean, использовать интерфейс командной строки Coherence или написать код самостоятельно для запроса моего кэша, но это похоже на проблему, с которой уже сталкивались раньше - надеюсь, я смогу что-то переработать чем писать с нуля?

Ответы [ 4 ]

9 голосов
/ 10 мая 2011

Лучший инструмент, который я могу найти, - это инструмент командной строки QueryPlus, поставляемый с полной установкой Coherence %COHERENCE_HOME%\bin\query.cmd или $COHERENCE_HOME/bin/query.sh.

Вам нужно указать его на свои файлы конфигурации Coherence, установив свойства вJVM:

java -Dtangosol.coherence.cacheconfig=META-INF/wlevs/coherence/coherence-cache-config.xml -Dtangosol.pof.config=my-pof-config.xml ...

Вам также необходимо добавить все jar-файлы, необходимые для загрузки пользовательских типов в путь к классам, и получить tangosol-coherence-override.xml в пути к классам, чтобы определить кластер для присоединения.к.

3 голосов
/ 11 сентября 2012

GUI для QueryPlus: http://code.google.com/p/zh-coherence-viewer/ Может выполнять скрипт CohQL и отображать его в виде таблицы или текстовой панели.

2 голосов
/ 14 февраля 2014

См. Также «Использование языка запросов Coherence»: http://docs.oracle.com/cd/E15357_01/coh.360/e15723/api_cq.htm

2 голосов
/ 12 марта 2013

Я работал над инструментом командной строки на основе клиентской библиотеки Coherence C ++ здесь:

https://github.com/actsasflinn/coherence-tool

Пока нет CohQL, но поддерживается следующее использование, которое охватывает почти все, что я хочу:

./run.sh <cache-name> get <key1> [key2] ...
./run.sh <cache-name> mget
./run.sh <cache-name> put <key> <value>
./run.sh <cache-name> mput <key1> <value1> [<key2> <value2>] ...
./run.sh <cache-name> delete <key> [key2] ...
./run.sh <cache-name> size
./run.sh <cache-name> keys
./run.sh <cache-name> values
./run.sh <cache-name> key_exists <key>
./run.sh <cache-name> value_exists <value>
./run.sh <cache-name> clear
...