Configure a dedicated email dispatch server

Abstract

Use dedicated EXM servers to speed up the process of generating and sending messages.

Dedicated EXM servers generate messages in the same way as the master server does. This allows you to speed up the message generation and sending process. You can install one or more dedicated email dispatch servers depending on your typical dispatch scenario and deployment environment. All servers share the same databases.

To configure a dedicated server:

  1. On the dedicated server, install Sitecore Experience Platform and configure it as a basic Content Management server. You can combine it with other server roles as needed.

    Important

    To avoid installation issues, you should start configuring a dedicated server with a clean Sitecore installation without EXM-related files or settings.

  2. On the dedicated server, set the folder permissions required for Sitecore to run.

  3. On the dedicated server, in the Sitecore.config file, edit the absolute paths so that they point to correct locations. For example, in the dataFolder setting.

  4. On the dedicated server, in the \App_Config\ConnectionStrings.config file:

    • Ensure the connections point to the same databases as the master server uses.

    • Add the exm.master connection string:

      <add name="exm.master" connectionString="user id=user;password=password;Data Source=(server);Database=Sitecore_EXM" />
    • Add the EXM.InternalApiKey connection string, for example:

      <add name="EXM.InternalApiKey" connectionString="0x0000000000000000000000000000000000000000000000000000000000000000" />

      The format of the connection string value is represented by a 64-character hexadecimal format. The connection string value above is just an example and should not be used.

  5. Extract the relevant Email Experience Manager - Email processing package to your website root folder on the dedicated server.

  6. On the master server:

    • Add the EXM.DedicatedDispatchService connection string:

      <add name="EXM.DedicatedDispatchService" connectionString="/sitecore%20modules/web/exm/dedicateddispatchservice.asmx" />
    • In the Sitecore.EmailExperience.ContentManagementPrimary.config file, in the DedicatedServers section, enter the address of the dedicated server. For example:

      <DedicatedServers>
         <address value=" http://dedicated.server " />
      </DedicatedServers>

    Note

    If you enter the IP address of the dedicated server in the address setting (for instance: <address value="http://10.38.41.24" />), then on the dedicated server, Sitecore must run on the default web site.

You have now configured the dedicated server. You can configure several dedicated servers using this procedure.

When you start the dispatch process on the master server, the same process starts on the dedicated servers. As long as there are subscribers left in the list in the EXM dispatch database, each server accesses the list, takes one of the remaining subscribers, generates the message for them, and passes the message to the message transfer agent configured for this server.

Tip

Use the Sleep setting to balance the load between the master server and the dedicated servers.