Kentico 10 - Better Faster Stronger


Four hundred horsepower, insane torque, listening to the engine moaning out its song. Millions of people could relate to this. One day this mass of high octane consumers will realize they need to check your e-shop for a new GT supercharger, just because they are watching a motor show that was recently reborn. Thousands of page hits per second and two million new contacts in an hour. Can your rig handle it?

According to the research we did during this year, we know that the performance or scalability limitations are the biggest boogie monsters, sitting in the closet and waiting quietly for holidays to bring on the horror. EMS adopters want a simple thing, truly leveraged EMS features. Who can blame them? They are doing business, and for that, they have a simple need to store as many contacts' and activities' history as possible. Where one campaign ends, another begins. The more data they have, the more accurately they can set up new marketing operations.

How long do you keep your marketing history for? As far as the research says, it's around six months if your site is live and under a fair amount of traffic. And how long do you want to keep it for? There's no satisfying answer for that. However, with the performance boost we did in this version of Kentico, it could be ten or even twenty times more. Let's say you are currently running a site with five million contacts. Everything works just fine. However, you did set up the rule to remove contacts older than six months and to maintain a particular number of them. More months will lead to more history data and eventually performance issues.

We spent quite a time resolving this issue lately, and the result is not too shabby. We've successfully tested our sample site with a hundred million contacts and a billion activities, which I think is pretty impressive and it's not even the upper limit. If you want to upscale more, you can do that with better hardware.

The testing environment was running on Azure and besides the Dancing Goat e-shop it contained:

  • Ten condition-based contact groups
  • Two scores for evaluating contacts
  • Two personas
  • Three marketing automation processes
  • Two running campaigns

All of this was bombarded by two agent servers creating a massive load. Needless to say, this setup was still delivering excellent performance in the form of response time under one second. If you are interested in the tested traffic, here are some stats:

  • Concurrent visitors: 25000
  • Page requests per second: 1600
  • New contacts per second: 800

It was very satisfying to deliver something that challenging. We didn't make it ten times better; we managed to enhance the overall performance one hundred times, and that's something that not everyone is managing to do every day. All of our best practices and guidelines are covered in the specific documentation page.

But back to the original question. Can your rig handle a hefty load of customers and data history? If you're running Kentico 10, it surely can.

Share this article on   LinkedIn

Michal Kadák

As the guardian of the core layers of Kentico, I'm here to keep you up to date on the place where all Kentico features meet - the platform.