Reviewing docker performance profile

We have profiled application start in the previous post, and will carry on wall clock time investigation; let’s start by looking at Thread Time report: First thing to notice – a set of processes running next to w3wp: CSC is a compilation effort, every entry takes ~4.6 seconds at least (delays application start as well)Continue reading “Reviewing docker performance profile”

Performance crime: Params

You might heard params are evil. Have you ever seen the performance bill for that? How to find out where params are used? Memory allocation report shows all allocations, we’ll start from here: Method with params creates an array behind the scenes, so hunting for object[]: IL code proves sad truth – array is alwaysContinue reading “Performance crime: Params”

Reckless interlocked operations

Let’s start with a guess – what is the most CPU-heavy operation in Sitecore? Answer: Performance counters initialization: Yes, that’s right, those performance counters which are powered by OS and super fast. Although Sitecore counter init implementation does not look offensive (volatile read & interlocked), counters are everywhere (cache lookup / access / object creation):Continue reading “Reckless interlocked operations”

Why should an upper limit exist for every saved bit

Case study: polluted reports shows how system can be polluted with dummy data. Saving data (even HTTP referer) without validation can contaminate system as well: The results show astonishing 28KB for storing single value: Next time you see Analytics shards worth 600 GB – recall this post.

How often the site is visited from specific place?

Can “site visit frequency from specific place (or better, certain company office)” be just a query away? The needed analytics data is already collected by Sitecore, hence data mining could roughly be: Figure out area postal code (or reverse it by IP using any reverse IP lookup) Find all contacts that have the same detailsContinue reading “How often the site is visited from specific place?”

Case study: polluted reports

Agenda Analytics reports have suspicious statistics with lower conversion rates compared to other systems. Can we find out why? It seem that healthy data is diluted with junk/empty interactions with no value. We assume robot/crawlers activity gets recorded. Is there any OOB protection in Sitecore? Filter out robots by user agents Sitecore blacklists robots viaContinue reading “Case study: polluted reports”