1
votes

I'm wondering if my website need to be hosted on a different server for load balancing purposes as picture below:

enter image description here

I'm thinking of installing 3 Kentico Project into each server. Then, export and import the site into each Kentico Project and link with the same database connection string.

But what if one of the webparts (.ascx) gets updated? Is that mean I will need to update all 3 Kentico Project. What if other files like js, css, or media?

Is there a proper way to host on different servers but yet can manage the content as one of the Kentico Project get update?

3
Kentico has pretty decent documentation on how to setup a web farm: docs.kentico.com/k10/configuring-kentico/… - Marnix van Valen

3 Answers

1
votes

What you are describing is the exact purpose of Kentico's Web farm feature where you can have multiple servers (web farms) connected to a single database. The main purpose of web farms is to ensure that cache and files (not code files, but media files such as the ones uploaded by you as attachments, media library, meta files...) are synchronized across all servers.

Each server in your scenario has its own memory and if you change an object, you want all other servers to reflect the change because otherwise some visitors might end up seeing "old" data, while others wouldn't.

You are also correct in assumption that all code files (ascx, cs, aspx...) will need to be uploaded to all servers. Best way to approach this is to have a tool such as Team city which is able to deploy your changes to multiple servers simultaneously.

With js, css, html, images... it depends where you store them. If you store them in database (not usually the best thing to do) you don't need to update them on particular servers, but if you store them on file system, you might need to. There are many variables here, but some deployment tool will probably be the best bet.

0
votes

One note here. Try not to install Kentico directly on each of those server and use Export and Import to setup the site. Simply make a copy of the website physically files from your DEV server and paste into each of those server. Then connect them all to the same database.

Why not use the Export and Import? 1. You will get different hast salt string in the web.config which you will get Macro security error, which you will have to replace with the same key. 2. You may miss objects during export and import. 3. The export and import are mostly for the objects stored in the data base, and for the web farm setup, they share the same database, so there is no point of doing that.

0
votes

You can easily achieve this move to windows Azure from on-premises. --Can deploy your website/ web project as Cloud service/App service. --Kentico Azure supports both development and deployment solution --Built-in scalability

For more details refer below links

Hosting options: https://docs.kentico.com/k10/running-kentico-on-microsoft-azure/microsoft-azure-web-hosting-options

https://devnet.kentico.com/articles/deploying-kentico-to-microsoft-azure-know-your-web-hosting-options