Я настраиваю уведомления для своего кейса для приложений. Первая операция добавления отправляет одно уведомление. Но когда я заменю (Обновить) тот же элемент кэша на новое значение или удалю этот элемент, я получаю несколько уведомлений для этой единственной операции. Я подозреваю, что это не имеет никакого отношения к типу операции, которую я выполняю. Потому что я видел несколько дополнительных уведомлений. Есть ли какая-то конфигурация, которую я испортил? Я написал делегата в моем файле кода. Он нажимает на делегата постоянно в течение некоторого времени даже для одиночной операции.Дубликаты Уведомления принимаются в кэшировании приложений
Моя конфигурация:
<dataCacheClient requestTimeout="150000" channelOpenTimeout="19000" maxConnectionsToServer="10">
<localCache isEnabled="true" sync="TimeoutBased" ttlValue="300" objectCount="10000"/>
<clientNotification pollInterval="30" maxQueueLength="10000" />
<hosts>
<host name="192.10.14.20" cachePort="22233"/>
</hosts>
<securityProperties mode="None" protectionLevel="None" />
<transportProperties connectionBufferSize="131072" maxBufferPoolSize="268435456"
maxBufferSize="8388608" maxOutputDelay="2" channelInitializationTimeout="60000"
receiveTimeout="600000"/>
</dataCacheClient>
И мой код, который имеет делегат:
public void myCacheLvlDelegate(string myCacheName, string myRegion, string myKey, DataCacheItemVersion itemVersion, DataCacheOperations OperationId, DataCacheNotificationDescriptor nd)
{
//display some of the delegate parameters
StringBuilder ResponseOfCache = new StringBuilder("A cache-level notification was triggered!");
ResponseOfCache.Append(" ; Cache: " + myCacheName);
ResponseOfCache.Append(" ; Region: " + myRegion);
ResponseOfCache.Append(" ; Key: " + myKey);
ResponseOfCache.Append(" ; Operation: " + OperationId.ToString());
string value = ManualDataCacheOperations.GetCacheValue(myTestCache, txtKey.Text).ToString();
Legend.Append(string.Format("{0} - Operation {1} Performed at {2}{3}", myKey, OperationId.ToString(), DateTime.Now.ToShortTimeString(), Environment.NewLine));
}
Пожалуйста, дайте мне знать, где я пропускаю его ?? Почему он отправляет несколько уведомлений для одного элемента. Если это полезно, я использую кластер с двумя хостами. И использование того же кеша для управления сеансами тоже.
Спасибо Cybermaxs, Я видел, почему возникает проблема. Я добавляю звонок по каждой операции по ошибке. Тем не менее, есть вторая проблема. После опроса в первый раз приложение получает уведомления почти сразу после следующих операций, а не ждет следующего опроса. Есть идеи?? –