Cron jobs are required for a number of tasks and general system maintenance, and custom or contributed modules can have their own hook_cron
implementations to run maintenance. However, having a badly configured or overloaded configuration can saturate the cron processes and cause serious performance problems.
Elysia Cron is an extension of the Drupal-standard cron. It allows for greater control over tasks than standard cron, and it offers several ways to add custom cron jobs to your site. Elysia Cron allows you to both run cron frequently on time-sensitive hooks (for example, a scheduler) and to postpone cron for hooks that may need to run infrequently (such as only once a week).
When used correctly, Elysia Cron is a tool that can both lessen and distribute load and ensure that hooks only execute when necessary.
To set up Elysia Cron on Acquia Cloud:
http://[site_URL]/admin/config/system/cron
) and set the options accordingly.drush @[site].[env] -d -v -l http://www.example.com elysia-cron run &>> /var/log/sites/${AH_SITE_NAME}/logs/$(hostname -s)/drush-elysia-cron.log
Substituting your site's domain name for "www.example.com".
The command above will redirect all of the output to a log file located in your website's logs directory. This prevents disk space issues caused by emails sent to the root user and ensures that you can see the troubleshooting information.
To help prevent site overloads from cron, we recommend that cron.php
runs only once every six hours, or use Elysia Cron to set the specific system_cron
call to be called only once every 6-12 hours, depending on site traffic. This way, you can also set Elysia Cron to an interval of 15 minutes to allow more granular calls. Setting the default timing to one hour then gives several, 15-minute time blocks to interleave calls and to have only specific actions happening at one time. Reasonable settings for cron.php
or Elysia Cron tasks may not always match these specifications. Intervals on your site may be longer or shorter depending on your site's needs.
As a specific example, the system_cron
call that is invoked by cron.php
in Drupal effectively clears all cache tables every time it runs. If your cron is being called more often than your page cache is reset, the page cache entries are truncated prematurely. This forces the server to rebuild its caches more often, which can lead to server resource depletion. This can be very problematic when a traffic surge coincides with system cron calls, because it can expose a site to very large amounts of cache warming in a short period of time. Elysia cron can help with this if you set its tasks to coincide with, rather than use, the system cron to clear caches.
Understanding the Cron time string format is very important to ensure that you are setting up jobs appropriately and not crossing them.
Here are some points to remember when you're using Elysia Cron:
Elysia Cron is not a magic bullet and still has the potential to cause issues on the server if cron is run every minute.
One final note is that Elysia Cron provides the minimum, maximum, and average times for every cron hook and the number of times it has run. You can use this information as a simple profiling tool to create custom cron hooks that you can test before making changes in a production environment.
If this content did not answer your questions, try searching or contacting our support team for further assistance.
Wed Oct 22 2025 08:59:29 GMT+0000 (Coordinated Universal Time)