Creatuity Magento 1 Performance Refactoring

By Daniel Korzeniowski, on Nov 15, 2017
Note from the Blackfire team: Daniel Korzeniowski is leading one of Polish Creatuity Offices. As a major Magento integration partner, Creatuity has been a long term user of Blackfire. Both for projects hosted on Magento Cloud, and those hosted elsewhere. On a regular basis, Blackfire enables them to speed up Magento shops.
The Creatuity team was recently asked to improve performance for a large M1 site. Our client was unhappy with two areas of the site: the homepage and orders list. Being fans of Blackfire, we went to work profiling.

Homepage

Profiling the homepage yielded a decent target. The aw_zblocks module looked to be quite inefficient. After taking a look at how the module ran, we were able to improve the queries so that we were making fewer of them. This allowed us to trim the total SQL time by 46%!
The total breakdown of the savings from this performance refactoring of the Homepage:
  • Load Time – (-21%)
  • I/O Wait – (-13%)
  • CPU Time – (-23%)
  • Memory – (-5.12%)
  • SQL Queries Time – (46%) (-12rq)

Orders List

The orders list was more interesting. We found several things to optimize and it required the customer making decisions. 
The first thing we did was disable notifications on this page. This didn’t make a huge impact but it did help performance a bit. Next, we looked at “Signifyd Score” and “Guarantee Status” columns data query. We needed to either remove them or optimize them. For this decision, we went to the client.
The client agreed we could remove “Signifyd Score” but they needed “Guarantee Status.” So, we set out to optimize “Guarantee Status” and to remove “Signifyd Score.”
Altogether, or performance refactoring trimmed close to 40%! Much of the savings came from a 72% decrease in SQL queries time. This was a huge win for the client!

 
The total breakdown of the savings from these performance refactorings of Orders List:
  • Load Time – (-39%)
  • I/O Wait – (-60%)
  • CPU Time – (-16%)
  • Memory – (-9.66%)
  • SQL Queries Time – (72%) (-47rq)
 Happy profiling,