Does your website take longer than it should to load? In this post I will highlight some options you have to increase the speed at which your website is rendered to the user. I may dive deeper and go into more detail in later post's about the topic's we talk about today, but this will help you get started with improving performance. The first option requires little to no technical help while the second and third options will require technical help to implement.
Image Optimization
If your images are not already optimized, then this is the quickest way for you to see instant improvements when loading your website. So, what exactly does this mean? This means that you want to have a good quality image while having the lowest file size possible. To do this, start by choosing the correct file extension for your image.
PNG will produce the highest quality but comes in a larger file size. JPEG is usually what you want to use since it provides the balance we are looking for between quality and file size. Depending on your image, SVG can be the best option since it usually has a smaller file size than PNG and JPEG, but you normally would only use this for simple images, logos, and icons. Once you have the correct extension, you should compress your image and then you can upload the image in Sitecore. There are tools available to help with this and coding best practices to implement while developing for images.
Load Balancing
If you receive a lot of traffic to your website and have not implemented load balancing, then this should be a top priority for you to implement. Load balancing refers to efficiently distributing traffic across multiple servers so that one server does not take on all the traffic at once and cause congestion.
A load balancer sits in front of your servers to manage traffic and redirect the user to a server than can server the website in an efficient manner. Some benefits for your servers while using load balancing are reduced downtime, scalable, redundancy and efficiency.
Content Deliver Network (CDN)
CDN is a network of distributed servers that delivers content to a user based on geographic location. Examples of content delivered are HTML pages, javascript files, stylesheets, images and videos. Benefits of using a CDN are improved load times, reduced bandwidth, increasing content availability and redundancy and improved security. Sitecore provides great documenation around this which you can find here.
There are multiple options for this but Sitecore recommends using Microsoft Azure® Content Delivery Network (CDN) for the Sitecore Media Library, using either Azure Marketplace or Sitecore Azure Toolkit, you can choose between having Sitecore set up a CDN for you, or bringing your own CDN. If you are considering setting up a CDN manually (without using Azure Marketplace or Sitecore Azure Toolkit), you will need to set up a CDN yourself. If you choose the last option, you may go with Cloudflare.
By implementing these 3 options, you will see a great increase in performance. If you are still experiencing slow load times throughout your site, then you may have a bigger problem on your hands. The first two options I would look into is how your content tree is structured and how your renderings are developed. The renderings may be using nested loops, inefficient queries, or could be a number of other code related issues. Feel free to reach out to us on any channel as we would love to help you solve these issues.