как очистить все записи из solacache, а также удалить одну запись (ключ) из solcache - PullRequest
1 голос
/ 05 мая 2019

Мы используем solace-cache / solcache в нашем проекте.В нашей среде разработки нам очень трудно обратиться к администраторам с просьбой обновить кэш.

Мой вопрос:

Используя Java-интерфейс solace, есть ли способ, которым мы могли бы очиститьвесь наш экземпляр кэша утешения и / или есть ли способ удалить определенные ключи, уже хранящиеся в кэше?

Если нет, то есть ли какие-нибудь простые команды, которые мы могли бы использовать для этого, используя протокол SEMPбез необходимости иметь полные права администратора для утешительных устройств?

Спасибо,

1 Ответ

2 голосов
/ 06 мая 2019

Самый простой вариант - запросить ограниченную учетную запись администратора с правами только на чтение / запись вашего сообщения vpn от ваших администраторов. Затем вы можете использовать инструменты управления, такие как SolAdmin, для управления вашим VPN.

В противном случае это можно сделать, выполнив команду SEMP over message bus. Опубликовать следующее сообщение в теме #SEMP/<router name>/ADMIN/DISTRIBUTED-CACHE

<rpc>
    <admin>
        <distributed-cache>
            <name>myDistributedCacheName</name>
            <vpn-name>myVpnName</vpn-name>
            <delete-messages>
                <topic>my/topic/name</topic>
            </delete-messages>
        </distributed-cache>
    </admin>
</rpc>

В строке темы могут быть указаны шаблоны. Например, использование строки темы «>» удалит все сообщения в кэше.

Обратите внимание, что ваш message-vpn должен быть настроен на:

  • Разрешить SEMP через шину сообщений
  • Разрешить команды администратора
  • Разрешить команды распределенного кэша

Подробную информацию о включении этих функций в вашем сообщении-vpn можно найти здесь .

Подробности публикации запросов SEMP по шине сообщений можно найти здесь . В качестве альтернативы обратитесь к образцу SempGetOverMB.java, который предоставляется вместе с Java-API Solace.

...