4

Say I have a single CM with 1x master db, 1x core db and 2x web dbs (2x publishing targets) for 2x CD servers in different regions. I can't call both web dbs "web" - one must be something different, e.g. "web2".

-----------------            / CD1 ("web")
|       CM       |--------- <
| ("web","web2") |           \ CD2 ("web2" but locally called "web")
----------------- 

On CD1, it only sees its own web db called "web". It doesn't know anything about "web2".

On CD2, I want the config to be the same, so it only knows about its own web db called "web".

Will this cause problems with the EventQueue and publishing/indexing operations? In other words, will the CM put events into the EventQueue tagged against "web" and "web2" respectively, meaning that CD2 won't respond to events for "web2" because it doesn't know what "web2" is?

Do I need to transform the config on CD2 so that its "web" db is actually referred to as "web2" everywhere?

  • Indexing with Solr is very tricky with adding one more database. You would need to add new indexes and even new strategies configurations for new database. – Anton Jan 22 at 11:39
  • Thanks @Anton. I've already got the SOLR part covered. I've got a SOLR cloud cluster connected to an individual Indexing server in each of the 2 CD environments, so they are totally isolated and the indexes are maintained separately. My main concern is the rename of the "web" database to "web2" and the knock-on effects that has for the indexing server and CD server trying to pick up the publishing events – theyetiman Jan 22 at 11:41
  • I've got a strong feeling the second CD (and indexing server) will need to refer to their respective "web" database as "web2" but I just want to confirm that's the case before embarking on a load of config transformations and refactoring. – theyetiman Jan 22 at 11:42
  • 1
    I tried to be smart before on a publishing target before. It's best to call the target databases with the correct names. Imagine another person who have to support the site without you there, it'll be a nightmare. Doing everything properly will also allow you to replicate the entire environment setup on app non production environments including local developer pc's. – Vincent Lui Jan 22 at 11:54
  • @VincentLui that's kind of what I thought, but it just seems like such a massive slog to rewrite/transform the entire Sitecore config just to change the name of the "web" database to "web2". If you search for instances of the word "web" in Showconfig.aspx it's at least 30 instances (for my config). It might be better to rethink the config and have a variable for webDbName so it can then be updated in a single place. But that itself is a massive change to the out-of-the-box Sitecore config (if it's even possible) – theyetiman Jan 22 at 12:19
-1

It requires to enable scalability settings config with unique instance name in each server and publishing instance name as CMS name. Once it is setup then it will work as expected.

Thanks

  • Can you elaborate please? I already have scalability settings enabled. Each server has a unique instance name, but the name of the web database is not related to the instance name unless I've misunderstood something? – theyetiman Jan 24 at 9:05

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.