The Dreaded "service Unavailable" Message

We get the dreaded "service unavailable" message quite often on the admin side and customer storefront. see image below.

Is there anything we should be doing on the cscart side to optimise the memory and page loading?

We have a dedicated server and this is the website hosts helpdesk reply :

BTW our web host is fantastic and we have been very happy with them.

After looking into the issue, it does appear that your server is low on memory as you can see below:

Memory in MB:

total used free shared buffers cached
Mem: 3931 3249 682 0 775 1560
-/+ buffers/cache: 913 3017
Swap: 1907 625 1282

Memory in GB:
total used free shared buffers cached
Mem: 3 3 0 0 0 1
-/+ buffers/cache: 0 3
Swap: 1 0 1

We have optimized a few settings within MySQL in order to avoid wasted memory, most notably by lowering the number of max potential connections.

Further reviewing the server configuration, we found that you are still using legacy backup which is likely resulting in a longer backup time than necessary. Given the opportunity, we recommend you switch to the new-style incremental backups for maximum efficiency.

When the message is received next time, check page source code. You should see the detailed error message there

If it's crashing because of memory, I would add more Swap. Make Total Swap equal to Total Memory.

Actually you will probably need to "inspect" the current page (right-click select inspect) because doing a "view source" will reload the page and you will lose the error comments unless the error re-occurs during the error page load.