2

We have a Sitecore 9.2 setup using the S3 profile for the CD with 3 instances scaled out manually. I'm pretty new to managing the PaaS environment, and I'm trying to figure out if the traffic is load-balanced between the 3 instances automatically, or if we need to set that up to help divvy up the load balacing. Our client has been seeing performance degraded since we upgraded from 8.2.3 on VMs to 9.2 on PaaS, to where average page load is 100% higher and average server response time is over 200% higher on PaaS. I want to get these tuned, and I figure the first step is ensure the load is being distributed.

5
  • 2
    S3 is probably not enough power for what you need. When you scale out your application, Azure adds a load balancer across those instances, there is no need to configure that separately. Depending on your traffic, I find that my clients are needing at least P3v2 sizes on the CD instances.
    – Richard Seal
    May 19, 2020 at 18:02
  • 1
    Have you done any load testing and profiling to see where the bottle neck is?
    – Richard Seal
    May 19, 2020 at 18:03
  • @RichardSeal I haven't yet...I'd been trying to use the load testing in Visual Studio but they discontinued that feature with Azure Dev Ops. Would you have a recommendation for a good tool in this regard? May 19, 2020 at 22:02
  • jMeter or Blazemeter work great
    – Richard Seal
    May 19, 2020 at 23:11
  • Also k6.io (formerly known as LoadImpact) is great for cloud-based testing May 28, 2020 at 15:07

1 Answer 1

1

You should swap to P2 from S3. P2 has the same price, but on newer CPUs and better underlying infra (Dv3-series instead of A-series).

Traffic is automatically load balanced across instances, but affected by the Configuration setting (in Azure) called ARR affinity on the General Settings tab. This adds a header that forces traffic from one client to consistently go to the same origin instance... usually.

Turn that setting to "Off" to have proper round-robin load balancing, but you must have out-of-process session state for that, so SQL or Redis (SQL actually performs best on Azure from our real-world testing... go figure).

I know you said "CD" already, but worth mentioning you mostly should not multi-instance your CM because Sitecore does not support out-of-process session state on CM roles as at 9.3.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

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