Программирование >>  Программирование баз данных 

1 ... 335 336 337 [ 338 ] 339 340 341 ... 346


Поэтому в данном разделе приведены общие сведения о службе Notification Services. Кратко можно отметить, что эта служба предназначена для передачи пользователям или прр1ложениям извещений о том, что произошло некоторое событие. При этом предполагается, что пользователь имеет право определять, что представляет собой событие, поэтому разнообразие событий настолько велико, насколько можно себе представить. Тем не менее программное обеспечение SQL Server непосредственно после инсталляции поддерживает события трех описанньгх ниже типов.

События службы Analysis Services. Эти события возникают при выполнении запросов на языке MDX. Проверка наличия этих события выполняется службой Notification Services в соответствии с заранее установленным расписанием, после чего полученные результаты анализируются на предмет того, содержится ли в них информация о событиях, на которые оформлена подписка в интересах пользователей или приложений.

События T-SQL. Эти события возникают при выполнении стандартных запросов на языке T-SQL. Как и в случае запросов MDX, проверка наличия этих событий осуществляется службой Notification Services в соответствии с заданным расписанием, после чего происходит анализ полученных результатов для определения того, содержат ли они события, на которые подписались пользователи или прр1ложения.

События службы наблюдения за файловой системой. При обработке событий этого типа используются библиотеки файловых служб Windows для получения активного извещения при создании, изменении или удалении файла. Операционная система Windows уведомляет своих подписчиков о возникновении таких событий заблаговременно (в данном случае подписчиком становится служба Notification Services), поэтому события такого типа контролируются активным способом и не требуют выполнения запланированного опроса или осуществления запросов. После обнаружения любого изменения на диске может быть просмотрено содержимое файла (разумеется, при условии, что операция, вызвавшая изменение, не была операцией удаления) с помощью одной из схем XML, что позволяет определить, соответствует ли рассматриваемое изменение определению события.

Предусмотрена также возможность определять события, заданные пользователем, с учетом того, должна ли проводиться проверка наличия события в соответствии с установленным расписанием или на основе превентивного мониторинга. Определяемые пользователем события могут представлять собой практически все, что угодно, начиная с опроса Web-службы и заканчивая выполнением запроса к базе данных независимого разработчика.

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



Система автоматического контроля за состоянием запасов, с помощью которой формируются заказы на товары после того, как обнаруживается снижение количества определенного товара ниже критического уровня пополнения запасов (в этом примере подписчиком является приложение).

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

Передача посетителям фор)а, относящегося к проблематике программного обеспечения, извещения о поступлении новых почтовых отправлений, которые касаются интересующей их темы (еще один пример, в котором подписчиком является пользователь).

Краткий обзор архитектуры

Для развертывания приложения службы рассылки извещений требуется обеспечить совместную эксплуатацию нескольких взаимосвязанных компонентов. В основе службы Notification Services лежат несколько основных функциональных областей, которые входят в состав определенной инфраструктуры, обеспечивающей эксплуатацию машин, поддерживающих эту службу.

На рис. В. 10 показано, что в систему поступает поток информации о подписках и событиях, на основе которой генератор согласовывает события, с подписками, предназначенными для получения информации об определенньпс событи51х, после чего формируются записи в таблице извещений. После этого распределитель отправляет извещение с помощью тех средств, которые подписчик указал как приемлемые для себя.

Интерфейс управления подпиской

1. .=Г:

Объекты управления подпиской

Объест подписчика

Объект устройства подписчика

Объект подписчика

Данные подписчика

Данные устройства подписчика

Поступление событий

Провайдеры событий

Данные подписки

[ Объект , события

События

События XML

Таблица базы данных

(объект] I XMLLoader J

Таблица События событий

куб Analysis Services

Хранимые процедуры ) 1 SQLServer J

События

Запрос MDX

Таблица уведомлений

Генератор

Правило 1. история собьп-ий

Правило 2 расписание подписки

История (необязательный компонент)

Формирователь содержимого J

Файловый канал -*

КаиаяБМТР

Сервер SMTP

Рис. в. 10. Схема функционирования службы рассылки извещений



Развертывание приложения Notification Services сводится к тому, что используются API-интерфейсы Notification Services (находящиеся в пространстве имен Microsof t. SqlServer .NotificationServices) для определения конкретных событий и регистрации подписок пользователей на эти события. В ходе оформления подписки должно быть указано, с помощью каких средств необходимо передавать подписчику извещения о конкретном событии. В дальнейшем в службе Notification Services применяются заданные правила и формируется список извещений, которые должны быть переданы в соответствии с этими правилами. Затем эти извещения распространяются службой Notification Services с помощью тех средств, выбор которых был сделан подписчиком в ходе оформления подписки (отправка по электронной почте, запись файла на диск, открытие Web-страницы и т.д.).

Развертывание

в ходе развертывания приложения Notification Services необходимо установить не только клиентское приложение, но и клиент службы Notification Services. Инсталляция службы Notification Services осуществляется в процессе инсталляции программного обеспечения SQL Server, поэтому необходимо проследить за тем, чтобы пользователь сначала установил все необходимое программное обеспечение и только после этого приступал к установке конкретного приложения. Кроме того, в системе, в которой должен эксплуатироваться экземпляр службы Notification Services, необходимо выполнить настройку конфигурации данного экземпляра (для этого обычно используется программа Management Studio, которой передается файл конфигурации).

Некоторые дополнительные сведения

Безусловно, служба Notification Services - замечательное новое инструментальное средство, функционирующее в рамках удобной инфраструктуры. Эта служба легко доступна и позволяет дополнить функциональные возможности приложений, которые уже эксплуатируются на основе программного обеспечения SQL Server. Перспективы применения службы Notification Services настолько заманчивы, что в некоторых случаях становится вполне оправданным приобретение программного обеспечения SQL Server исключительно в целях поддержки приложения службы рассылки извещений.

Следует также учитывать, что если есть необходимость организовать использование извещений, то не следует отказываться от применения службы Notification Services исключительно по тем соображениям, что задача ее освоения является слишком сложной, поскольку в любом стгучае попытка создания собственной системы поддержки извещений является менее оправданной. Тем не менее следует учитывать, что полноценное использование этой службы невозможно без овладения указанными ниже навыками.

Эксплуатация пользовательского интерфейса или других средств регистрации подписок (с помощью средств Subscription Management Interface).

Продуктивное использование встроенных обработчиков событий.

Создание в случае необходимости собственных обработчиков событий с применением сборок Notification Services.

Освоение всех нюансов инсталляции и развертывания.

Из сказанного не следует вывод, что задача всестороннего освоения возможностей службы Notification Services является непреодолимой. Для ее решения достаточно лишхь



1 ... 335 336 337 [ 338 ] 339 340 341 ... 346

© 2006 - 2024 pmbk.ru. Генерация страницы: 0.191
При копировании материалов приветствуются ссылки.
Яндекс.Метрика