Smoke Testing

A good starting point is to verify that the site is actually delivering content and to measure how fast it does this over time. You can do this by repeatedly accessing the site using the wget command and

  • Observing the effect on operating system resources using commands such as top, vmstat and iotop

  • Observing how the Content Engine responds using the performance summary pages in the escenic-admin web application (see Performance Summary)

wget downloads a requested page with all its linked resources, such as images, style sheets and Javascript files. You should always call it several times when you are testing, in order to even out variations in performance. The time taken to respond to a single request cannot be trusted, since it may have arrived at an exceptionally good or bad point in time: when the caches are being filled up, when the connection to the database needs to be re-established or when Java is performing garbage collection. You should therefore submit the command in a loop that executes it a number of times, for example:

$ for i in $(seq 10); do
    time \
    wget -p \
    --delete-after \
    -o /dev/null \
    http://mysite.com/
done

You should repeat this test at intervals to see the effect of the changes you make during tuning.

This command can also be used to fill up the front end caches after they have been flushed (for instance after a new deployment of your portal software).