Waxing Poetic is a jewellery store founded in 2001; they have over 150 physical locations across the United States. Their e-Commerce business started in 2008, with an extensive collection of jewellery available.
United States
Consumer
Web Development eCommerce & SLA
Waxing Poetic is a jewellery store founded in 2001; they have over 150 physical locations across the United States. Their e-Commerce business started in 2008, with an extensive collection of jewellery available.
AWS and Magento2 experts
After Wirehive the hosting provider set-up the AWS infrastructure and the deployment systems,
they handed it over to Kontraband’s in-house frontend developer Sean. Sean’s task was to do all the AWS updates on an application level:
Magento maintenance, installation of Magento modules, Magento theme deployment and so on. The problem is that Wirehive were not able to
provide advice or help, so any issues that Sean came across, became his issue. Sean had no other option – but to seek support from an
external provider that understands how Magento2 works with AWS and this is where we came in. This obvious cause was due to neither understanding each others technology to be able to move their project forward.
Issue
Waxing Poetic reached out to us, as they were concerned about their bounce and conversation rate going down drastically. The development agency they had been using, couldn’t resolve their issues and felt it would be better to gain us on a short-contract basis to resolve this issue.
This is one of the projects we love to get into – you get such a buzz from investigating these issues. It’s almost comparable to doing a crossword puzzle – but in code.
Discovery
After investigating the server performance and doing a thorough code audit, we discovered quite a few bottlenecks – which were playing havoc on their performance for both the website and their potential clients.
01. It would take over 10 seconds to load a page, as you know yourself – you only have a few seconds to grab someone’s attention before they jump ship to a competitor.
02. The scripting language was over ploughed and wasn’t correctly reference or optimised for speed. This was mainly due to some scripting becoming redundant or not correctly formatted and equally a similar issue with the non-redundant scripting. All this would mean that if you wanted to look at a product or category page – you would have to download 4/5mb first.02. The scripting language was over ploughed and wasn’t correctly reference or optimised for speed. This was mainly due to some scripting becoming redundant or not correctly formatted and equally a similar issue with the non-redundant scripting. All this would mean that if you wanted to look at a product or category page – you would have to download 4/5mb first.
03. Generally on websites of today, you would utilise what they call Web Caching, this basically allows for the common elements that make up a page to have a temporary storage space on the server, allowing for faster page delivery and reduces server lag. There caching was poorly organised, and was only used on file level basis. This in turn raised their average server load to an unexpected high.
04. There was also an intensive cron* job happening when Waxing Poetic online store would be at their busiest. This effected client use and their PPC (pay per click) campaigns. *Cron jobs are used for regular scheduled server tasks.
05. And finally, their database queries were painfully slow.
Ames the Operation Director at Waxing Poetic told us that – their shop staff in all 150 physical locations uses the backend application, meaning new products are being added daily to their online store; their online database of products and product attributes were growing rapidly, leaving no server space on their current infrastructure.
Solution
After a few consultations with Ames, we decided that we would offer a new hosting plan, which would allow for short-term and long-term scalability. This allowed us to create a multi server environment, based on Magento optimised LEMP (Linus, Nginx, MySql and PHP) stack system.
This is the breakdown of the new hosting strategy
01. Caching on server level through Varnish (HTTP accelerator, content cached directly in RAM)
02. Load balancer to split backend activities from the frontend store traffic
03. NFS (network file storage) to store media files and static content
04. Redis for session storage Redis for session storage
05. Database replication
05. Webnode 1 and webnode 2 for storefront, webnode 3 for application backend
The migration was accomplished very smoothly and most importantly without downtime to their online store. All static content was moved to a CDN (Content Delivery Network). By moving the media files onto a separate server, would create a calming effect on server load stress.
We now needed to give the new server a stress test, so as not to effect their business, we examined their analytics to discover the best time for us to perform the stress test, once optimal time had been discovered we turned on our server stress tool. The results spoke for themselves and the client was extremely happy.
Stress Test Results
- The new server setup was capable to handle 100 concurrent users smoothly
- Checkout was 3 times faster
- Product and Category pages were down to 3 seconds and under
- Heavy backend activity from their store staff was no longer an issue
Speeding up the frontend
Now we had to tackle the scripting and frontend issues. My team dug into the code and started a full code audit – with the aim to improve Waxing Poetic frontend shops Google speed test score.
First things first, we needed to patch and update Magento on a core level; this in itself will help speed up the process. We then performed the tasks:
- Image optimisation: reducing their size, but keeping their quality.
- Scripting optimisation: improving the speed of slow scripting query strings, JavaScript deferred and reduced in size.
Results
After 2 weeks of solid coding, we tested the site on Google speed test tool and from being a very low score, we had moved Waxing Poetics website to a green, this has a positive impact on their Search Engine Ranking Position, which in-turn improved their Search Engine Optimisation for their website. Waxing Poetic was extremely pleased and they decided to extend our contract to be their main Magento support, looking after all their online technologies. Which is always such an honour.
We are the only team who owns root access to all Waxing Poetic resources. Their online business runs safely and has been growing since last 3 years, from the date when we took over.
New Relic - Complex monitoring tool
AWS route54 - AWS based name server hosting
Linode - Scalable cloud hosting
Ubuntu - LEMP stack
Varnish - HTTP accelerator and reverse proxy server
Bitbucket - Code repository
Git - Distributed version control system
MAXcdn - Content delivery network
Gattling - Stress test tool
Google Analytics - Traffic analyser
Magento 1 - eCommerce platform
MAXcdn module
to flush CDN content directly from Magento backend
Varnish flush module
to flush single CMS pages from Varnish cache
Cookie warmer module
to utilize better cache performance with Varnish cache
Do you have a project or collaboration that you would like to discuss with us or are you just curious to hear more about how we can help?
Mark Hebblewhite
Discuss your needs with our specialist
Connect with Mark
Free Consultation
We are just a click away and can’t wait to hear from you.