Управляемый API EWS: PullSubscription - достаточно ли отмены подписки? - PullRequest
1 голос
/ 25 октября 2011

Мы проводим некоторую оптимизацию нашего приложения, которое интенсивно использует EWS, и один момент касается очистки подписок, которые больше не нужны. Мы используем тип PullSubscription, поэтому первым делом я убедился, что для каждой подписки должен быть вызван метод Unsubscribe.

К моему удивлению, согласно счетчикам производительности Exchange, количество подписок после вызовов Unsibscribe уменьшается только на несколько подписок, но не до 0 (в целях тестирования я звоню Unsubscribe для всех открытых подписок). Например, у нас есть 200 почтовых ящиков на каждые 3 подписки (каждая для разных типов элементов: электронные письма, встречи и т. Д.), Что равняется 600 активным подпискам. И после отмены звонков (для всех 600 из них) счетчики показывают, что только 10 или около того подписок были удалены. Если мы запускаем наше приложение несколько раз, количество подписок увеличивается с каждым разом.

Так Exchange каким-то образом буферизирует, задерживает или делает что-либо с этими подписками? Достаточно ли звонка Unsubscribe или я должен сделать что-то дополнительное, чтобы быть уверенным, что подписка удалена и не зависает на ресурсах сервера? Или, может быть, речь идет о конфигурации сервера и о том, как работает сервис EWS?

Конечно, документация EWS так громка об этом, как и в большинстве других случаев (что означает только базовую ссылку на класс, никаких возможных решений проблем, ничего полезного в решении проблем), поэтому я надеюсь, что кто-то здесь подскажет мне некоторые подсказки.

1 Ответ

1 голос
/ 19 ноября 2011

Вы не можете сделать больше, чем отписаться от всех подписок.Exchange должен справиться с этим и со временем отказаться от старых подписок ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...