Ektron CMS400.Net Reference

>>Synchronizing Servers Using eSync > Using eSync > Characteristics of eSync

Characteristics of eSync

Easy and Flexible Setup and Usage

You administer eSync through Ektron CMS400.NET’s Workarea > Settings > Configuration > Synchronization screens. The screens let you establish a sync configuration between two databases, then specify any number of sync profiles for each configuration.

- See Screen Sample

Each profile lets you specify data to sync, a direction, and a schedule. You can always sync immediately by clicking Sync () .

You create profiles to sync these kinds of data.

all content, assets, and library assets

all Workarea folder files

the remaining site files (with a few exceptions)

a selection of Windows files in your site root folder and its subfolders

See Also: Setting up eSync Profiles

Individual file types can be included or excluded from the sync. In addition, you can sync Ektron CMS400.NET content or folders. See Also: Content and Folder Sync Options

Sync Configurations

Several eSync configurations are shown below. You can synchronize any server to or from any other server with one important exception: you cannot initiate a sync from a server outside the firewall. You can only initiate a sync from a server inside the firewall and copy to a server outside the firewall. This is because the outside server does not know the address of servers inside the firewall. However, you can use a staging server to push and pull updated information to and from a production server.

Warning! All eSync transmissions use port 8732. This is not configurable.

Configuration 1: One Staging Server, One Production Server

This is the most basic eSync configuration, showing one staging and one production server. Each server has a database and one site.

The eSync feature can automatically create a production server from your staging server. See Also: Using eSync to Initialize a New Site

For installation instructions for this configuration, see Scenario 2: Synching an Ektron CMS400.NET Server with Another Server.

Configuration 2: One Development, One Staging, One Production Server

This configuration includes a development server. Developers can use it to create new features and modify existing ones. When they are done, they can sync the changes to the staging server, where the changes can be verified before being moved to production.

For installation instructions for this configuration, see Scenario 3: Setting up a Development > Staging > Production Environment.

Configuration 2a: Multi-site Staging and Production Servers

The following configuration illustrates synching several sites on a staging server with those sites on production.

Configuration 3: Several Dev. Servers, One Staging, One Production Server

As shown in the illustration, any number of development servers can sync to each other and to your staging servers.

Configuration 4: One Dev., One Staging, One Production Site, One Production DB Server

In this configuration supported by eSync, the production site has two servers: one for site files, and another for the database.

To synchronize these servers, set up several eSync profiles. One syncs the database, assets, and templates to the production database server. Use additional profiles to sync the staging server’s workarea files with the production site server.

Note: When using separate site and database servers, assets are stored on the site server.

Configuration 5: Configuration 4 Plus Pre-Production Server

This eSync configuration adds an extra server between staging and production. The preproduction server can be used for review and testing of changes before they are moved to production.

Configuration 6: Multi-site: Each Site and DB on own Production Server

In this configuration, each production server has its own database plus the site files. As an alternative, you could have a separate server for each production database, with all sites on one production server.

Note: The above configuration also supports separate site and database servers.

To synchronize this type of configuration, set up several eSync profiles, one for each site.

Three database and template profiles

Three Workarea profiles

The Server Number

Every server in a sync configuration is assigned a unique number. The originating server is numbered 1, the first server with which it establishes a relationship is numbered 2, etc.

The server number is in the serverinfo.xml file, located in the c:\sync\inetpub\wwwroot\siteroot folder, as shown below.

<SyncServerInfoList>

<SyncServerInfo IsSyncRunning="true" MaxId="2" ServerNumber="1" IsMulti-SiteStaged="false">

<ServerId>b0cccb5a-1d45-4262-8857-79f1333696dc</ServerId>

<ServerUrl>http://localhost:8732/Ektron.Sync.Communication/SyncCommunicationScheduleService.svc</ServerUrl>

<ConnectionInfo>server=WS10080\SQLExpress;database=CMS400Developer;Integrated Security=TRUE;user=;pwd=;</ConnectionInfo>

</SyncServerInfo>

</SyncServerInfoList>

Unique ID Numbering

All Ektron CMS400.NET data is assigned a unique ID number to distinguish it from similar objects. Examples are content (see illustration below), folders, menus, users, etc.

- See Screen Sample

When you create a sync relationship, Ektron CMS400.NET applies to each server a new ID numbering range to ensure that, from then on, objects created on either server have a unique ID. This prevents collisions when synching between servers. For example, since membership users created on a production server have a different ID number range from those created on the staging server, eSync does not overwrite them.

To view a server’s ID number range, open its serverinfo.xml file, located in the c:\sync\inetpub\wwwroot\siteroot folder, and check the MaxId value (highlighted in red below).

<SyncServerInfoList>

<SyncServerInfo IsSyncRunning="true" MaxId="1" ServerNumber="1" IsMulti-SiteStaged="false">

<ServerId>b0cccb5a-1d45-4262-8857-79f1333696dc</ServerId>

<ServerUrl>http://localhost:8732/Ektron.Sync.Communication/SyncCommunicationScheduleService.svc</ServerUrl>

<ConnectionInfo>server=WS10080\SQLExpress;database=CMS400Developer;Integrated Security=TRUE;user=;pwd=;</ConnectionInfo>

</SyncServerInfo>

</SyncServerInfoList>

Multiply that number by 1 trillion to get the largest ID number which that server can assign. So for example, if MaxId = 3, possible ID numbers range from 2,000,000,000,001 to 3,000,000,000,000.

eSync Moves Changes Only

eSync only copies data that changed since the last sync. So, for example, if your site has 100 menus but only 3 changed since the last sync, it only copies three. As a result, eSync is very quick.

To track changes to Ektron CMS400.NET data between syncs, eSync sets up a c:\sync folder structure that mirrors your site’s Windows folder structure. This structure is created on each server when sync relationships are first established.

- See Screen Sample

No Ektron CMS400.NET files reside in the \sync folders. Instead, each folder has four .sync files that monitor changes to the Ektron CMS400.NET files in the corresponding folder.

(continued in Managing eSync Security Certificates)


Visit the Ektron Dev Center at http://dev.ektron.com 1-866 - 4 - EKTRON

Ektron CMS400.NET Reference Version 8.02 SP1 Rev 1

Ektron Documentation,© 2011 Ektron, Inc.