Tool Kit Makes E-Mail Scalable

By Timothy Dyck  |  Posted 2002-08-26

Tool Kit Makes E-Mail Scalable

Organizations using Microsoft Corp.s SQL Server will be able to download an add-on for the database starting this week that will provide large-scale personalized e-mailing.

The add-on, Microsoft SQL Server 2000 Notification Services, is included in a Microsoft SQL Server 2000 license, so anyone using SQL Server can install Notification Services on the same machine at no extra charge—a bargain.

It requires SQL Server, of course, and, because its in large measure a programming tool kit, it also requires developer expertise in a .Net language. We tested Beta 2 code of the software.

While only an option for Microsoft-centric shops, Notification Services provides a large set of message trigger, content formatting, personalization and delivery services for sending automatic messages to subscribers—which makes it preferable to writing this code from scratch.

Notification Services is the first server created by Microsoft that uses .Net Framework itself—its written in C#. We think writing server code in a managed execution environment is a great idea for security and hope to see more of the same in other Microsoft server products.

Notification Services comes in two versions: Standard Edition is licensed with SQL Server Standard Edition and must be run on the same machine as the database. This version is limited to three concurrent threads sending out alerts. Enterprise Edition is licensed with SQL Server Enterprise Edition and allows multimachine clustering and an unlimited number of alert distribution threads.

In a clustered environment, all machines that have Notification Services components must be licensed for the matching version of SQL Server.

Notification Services combines a Windows service that sends e-mail or other kinds of alerts and a .Net assembly that provides a programming interface for the product.

There arent any management tools per se; Notification Services uses Windows Event Log to report messages, and performance is monitored through the Windows System Monitor tool. A unified console would be a good addition.

Getting the Word Out

Getting the Word Out

Notification services can be triggered to send alerts using four input mechanisms (all of which ultimately do the same thing—add rows to Notification Services event table and so trigger it to send an alert). Developers can use its native .Net API, a Component Object Model wrapper for the native API—which will be easier to integrate into Windows code—by loading XML files from the file system through a Transact-SQL stored procedure interface.

In the case of the XML file interface, Notification Services includes a component that can automatically monitor a directory for new files.

In addition to triggered alerts, the software supports scheduled alerts—for example, a message sent to all subscribers at 9 each Monday morning.

Input events go into a database table. We then could set up rules to filter out a subset of these events and generate messages based on this event subset. Notification Services doesnt provide a mechanism to prioritize some events over others—the software uses a first-in, first-out queue—but company officials said a prioritization feature is being considered for a future release.

Messages can be created using XSLT (Extensible Stylesheet Language Transformations) scripts or custom-written content formatter methods. Both allow messages to be customized for each recipient. Notification Services allows for conditional formatting to automatically re-format messages for particular device types or to generate the same alert in multiple languages.

Notification Services delivers alerts to subscribers in three ways: as SMTP-based e-mail; as HTTP posts, which would most commonly be used with a telephone companys Web-based Short Message Service interface to send SMS messages to phones; and written to a file on disk. Customers also have the option of writing custom code if they wish to send alerts a different way.

Companies already using Microsofts .Net Alerts service can get a Notification Services plug-in that works with that service, although this is not included with the product.

In 90 to 120 days, Microsoft plans to ship an update to Notification Services that adds the ability to send messages to Microsoft Message Queue queues and send instant messages using Microsoft Exchanges Instant Messaging service. The update will offer packaged integration with SMS aggregators for easier sending of SMS alerts.

West Coast Technical Director Timothy Dyck can be reached at timothy_dyck@

Executive Summary

: Microsoft SQL Server 2000 Notification Services Beta 2">

Executive Summary: Microsoft SQL Server 2000 Notification Services Beta 2

Notification Services is a new program library and service for Microsoft SQL Server 2000 that provides a server for sending personalized messages to customers or employees. Its a programming tool set at this point, so .Net development skills are required, but its still a good option for shops that are using Microsoft SQL Server.


The software is part of the Microsoft SQL Server 2000 license, so its a real deal. The main cost will be for developers to learn and use the products programming interface.

(+) Supports e-mail, HTTP post and file system notification, as well as custom notification actions programmed by the user; allows for clustered deployments for high scalability.

(-) No centralized server management or administration tools; requires developers who are proficient in a .Net language to use the products API.


  • Home-grown applications

  • Rocket Fuel