Your achievements

Level 1

0% to

Level 2

Tip /
Sign in

Sign in to Community

to gain points, level up, and earn exciting badges like the new
Bedrock Mission!

Learn more

View all

Sign in to view all badges

SOLVED

Single Author with two different Publishers : will it be a good Architecture design?

sunily21159739
Level 2
Level 2

Hi All,

 

Please suggest is it good design to add two new different publishers for new application on single Author on existing architecture:( 1 author with 2 publishers)

 

Currently we are using 6.4 and on single Author we have two Publishers. Now we need to deploy one new application(different code base) on the same existing architecture. To reduce the load on Publisher we are planning to add two new Publish instances only for the new application. Please check high level diagram below( New Publish instance in blue color).

sunily21159739_0-1618005209781.png

I know this is possible but will it be a better design to handle deployment activities easily in such scenario as we are two separate teams for two different applications & don't have a common Devops for deployment.

 

Thanks,

 

1 Accepted Solution
Jörg_Hoh
Correct answer by
Employee
Employee

Deployment is one problem, the interaction between the 2 codebases a different. And if you are working on-prem, licensing might be a third.

 

On author you need to have the 2 codebases running in parallel, and that very like needs some kind of coordination and testing. To have maximal separation between these 2 applications you should have distinct environments. See also my blog posts about multi-tenancy:

 

https://cqdump.joerghoh.de/2015/05/04/the-problems-of-multi-tenancy-governance/ 

https://cqdump.joerghoh.de/2015/06/23/the-problems-of-multi-tenancy-the-development-model/

 

 

View solution in original post

9 Replies
Singaiah_Chintalapudi
Community Advisor
Community Advisor

Few things to consider:

  1. It's always better to add additional dispatchers as well (1:1 mapping). Dispatchers are commodity servers and extremely cheap to add additional ones. I would recommend to add new dispatchers to point to new publishers.
  2. Any specific requirement to push the code bases to only few publishers? Its significantly low maintenance if you manage both the code bases on all publishers and let all publishers to handle requests for both the domains. Of course this depends on many other factors such as integrations and caching mechanisms..etc.
  3. You just need to have site specific dispatcher configs to handle the requests from both of these sites.

Thanks,

Singaiah

sunily21159739
Level 2
Level 2
Thanks Singaiah for your response, yes we we need to keep separate both the code base, First application code on one Publisher(4503) and second application code on New Publisher(4505). Since Author will still be shared between application one and application two do you believe it could cause bottlenecks based on the DevOps pipeline and coordination with separate development teams and timelines.
Singaiah_Chintalapudi
Community Advisor
Community Advisor
Yes, you may face few issues with deployment pipelines. Lets say you're on AMS and want to leverage Cloud Manager for deployment, your architecture would not work. Cloud Manager just deploy to all nodes.
Singaiah_Chintalapudi
Community Advisor
Community Advisor
Yes, you may face few issues with deployment pipelines. Lets say you're on AMS and want to leverage Cloud Manager for deployment, your architecture would not work. Cloud Manager just deploy to all nodes. What's the main reason having site specific publishers apart from managing the code base? I would go for separate code bases for both of the sites and deplot both the code bases to all servers and allow all servers to serve content for both the sites just for easy maintenance, upgrades, DevOps pipelines..etc.
sunily21159739
Level 2
Level 2

Currently both the applications are running on same instances( App one and App two), we have huge traffic load on Application one and all the open connection pools used by Application one and due to this Application two went down/slow. To avoid this situation we are plaining separate out both the application on different publishers and we can  separate out the traffic.

Singaiah_Chintalapudi
Community Advisor
Community Advisor

Okay. Try to fix those open issues causing the slowness and it will help you on the long run on the maintenance side as well as improving App One performance. To start with, you can deploy both the code bases to all four publishers and route the App Two traffic to Pub 3 and 4 and App One traffic to Pub 1&2 until you fix the App One code base/configs.

Jörg_Hoh
Correct answer by
Employee
Employee

Deployment is one problem, the interaction between the 2 codebases a different. And if you are working on-prem, licensing might be a third.

 

On author you need to have the 2 codebases running in parallel, and that very like needs some kind of coordination and testing. To have maximal separation between these 2 applications you should have distinct environments. See also my blog posts about multi-tenancy:

 

https://cqdump.joerghoh.de/2015/05/04/the-problems-of-multi-tenancy-governance/ 

https://cqdump.joerghoh.de/2015/06/23/the-problems-of-multi-tenancy-the-development-model/

 

 

View solution in original post