Before you try improving, get a baseline measurement of your current site and an idea of what needs improvement. A great tool to use for this is Google PageSpeed Insights. This site will measure your website response and give you an idea of where the problem areas are. Once you have data on your current performance, it’s time to take steps to make your server response time as fast as possible.
Check your hosting package
If your website is technically demanding and has some really customised content that needs a lot of resources, don’t load it on a shared hosting platform. Shared hosting will work very well for 95% of all websites, but there are a few sites that need a bit more. Use a VPS host that is all yours to run these sites. With VPS hosting, you can upgrade and add more resources as you need. This ensures that you always get the best response from your site or sites.
Select the correct type of Web Server (VPS hosting only).
While Apache is an excellent Web Server, you might be able to get better results using Nginx, Lighttpd or Caddy. Comparing Web Servers may be confusing at first, planning ahead will pay off later as you are better able to handle changes in your server needs. When installing a web server, use Google to find the correct configuration to give you the best response. The default settings are hardly ever optimal and different content will demand different approaches. Give a serious look at both caching technology and compression technology. At the same time, be aware of security issues and plan accordingly.
Using content management systems (CMS) like WordPress, your site will gradually gain unneeded code snippets that just increase load times. Even if you don’t use a CMS, it could still happen as you add content over time. As such, remove things that you do not need. Optimize your images, combine your resources, and enable compression since smaller files are your friend when it comes to lowering response times.
If you use a database, ensure that your database is structured by the queries you are going to be making the most often. Having to do multiple JOINs can kill response times and is a good indicator that you need to restructure both our queries and your database. Use the correct indexes and ensure that they are kept up to date.