Direct Mailer

Direct Mailer can be deployed as a highly available clustered resource that takes advantage of Windows Clustering.

Direct Mailer depends on SQL Server Agent, and SQL Server Agent is cluster aware, so you can install the Direct Mailer database in a Windows Clustering configuration.

Although you can have only one Direct Mailer per site (as specified by the Direct Mailer global resource), you can install Direct Mailer on multiple servers. Multiple Direct Mailer services cannot share the same Direct Mailer database.

In addition to being cluster aware, Direct Mailer handles the failures of a clustered Direct Mailer database or the failure of the drop point, which can be either Simple Mail Transfer Protocol (SMTP) or drop directory. For example, Direct Mailer has the following features to handle failures:

  • Direct Mailer opens a database connection at startup to recover any interrupted jobs. It also opens a database connection for each job. If the database connection is lost, Direct Mailer is able to handle the transient connection failures.
  • Jobs that fail due to a recoverable error (for example, the server crashed or the MSSQLSERVER service became unavailable for a prolonged period) are automatically restarted when the service is restarted.
  • Each job tracks its progress through a mailing list. However, depending on when a failure occurs, the last message sent before the failure can be sent a second time when Direct Mailer restarts.

You can configure Direct Mailer to use multiple threads, and it is possible that one duplicate message for each thread will be sent when the Direct Mailer restarts. (The number of duplicate messages is usually equal to as many threads as there are processors.)

The following table lists the retries that occur for each failure mode.

Failure mode Action
During import/export preparation for mailing, List Manager fails. If the failure is determined to be recoverable (for example, SQL Server is unavailable) and not a data problem, then the operation is retried up to n times. Otherwise, Fail.
List Manager cannot be co-created. Fail. List Manager is not cluster-aware.
During a mailing, the Direct Mail database server fails. Retry n times. In Commerce Server Manager, set the following Direct Mailer properties:
  • Number of Retries. The number of times a connection to the DirectMailer database is retried when a connection failure occurs. Once the number of retries has been exhausted, the active job is terminated.
  • Retry Interval. The length of time that DirectMailer waits between retries.
During a mailing, an SMTP server becomes unavailable. Pause and retry n times. If it continues to fail, it is removed from the list. If it is the last one in the list, Fail.
During a mailing, a drop directory becomes unavailable. Pause and retry n times. If it continues to fail, it is removed from the list. If it is the last one in the list, Fail.

You install Direct Mailer on a SQL Server as a Windows Service. Direct Mailer accesses the Administration database for initialization, and then uses the Profiling System to obtain user profile information, Direct Mailer for job information, and IIS to render personalized pages. Finally, Direct Mailer uses the Exchange Server mail drop directory (or an SMTP server) to send its mail. Direct Mailer has the following single-point-of-failure dependencies:

  • The AppConfig object
  • The Administration database (initialization)
  • List Manager
  • Direct Mailer database
  • IIS
  • NTFS (Exchange Server mail drop directory)
  • SMTP server (socket connection)

Use the following steps to ensure availability of the List Manager service:

  • Cluster the databases that List Manager connects to: Campaigns database for using the Commerce Server Business Desk, and the Direct Mailer database.
  • List Manager is both a server and a client on the same physical computer and does not benefit from clustering. Do not deploy Windows Clustering for the List Manager service.
  • The objects and services that use List Manager always connect to the local instance, so List Manager does not need to be clustered.

See Also

Running Direct Mailer

Creating Direct Mail

Managing Lists of User Records

Copyright © 2005 Microsoft Corporation.
All rights reserved.