Seeing major performance issues

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.
8 years ago
This killed my DB yesterday - all 4 CPUs on our server were running at 100% and database timeouts were happening and our load balancer was throwing 503 errors. This has been a random problem on our server since going live in March but has steadily become worse over time.

The issue was from bots crawling the site, triggering multiple runs of "GetGuestCustomer" which detects that a bot is crawling, and loads in the search engine customer. Massive database locks happened on the Customer table which then backed-up the insertion of guest customers for actual users of the site.

The problem came from no index on the SystemName column on Customer table. However, the column is nvarchar(max) - meaning it's unindexable. Our table has 6 million rows - last time we had some performance issues a month back we were approaching 5 million (we get a lot of traffic!). So volume of customer data plays a huge role in when this issue will surface.

After altering the column to size 20, our site's performance restored to normal, and adding an index to the column resulted in additional speed gains. The databae load now hardly rises above 40% (though we use a heavily modded nopcommerce  to help achieve performance gains as well as having much more control over the site as a whole)

Steven
8 years ago
In 3.6, Customer.SystemName max length is set to 400 and there is a new index, so presumably this should be fixed (the IP address and password are still using nvarchar(max), probably at least the IP address should be limited a bit, to IPv6 max length).
This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.