I have a feed import, using Forena Reports, which imports data from a MySQL database every 5 minutes using a Cron job set up in Elysia. It works fast and very reliably, even with large volumes - a lot better than .csv importing. I want to increase the frequency to every minute. Although the normal import volumes are not large ( say < 10 nodes every hour ) I'd like to do it so that has the least impact on normal website users.

Here are the possible approaches that occur to me:

  1. continue to use the Cron service within the Drupal site,
  2. run a standalone script that bootstraps a new Drupal session from the Drupal root,
  3. run a standalone script that bootstraps a new Drupal session from another location on the same server,
  4. run a standalone script that uses curl to bootstrap a new Drupal session from another domain,
  5. set up another Drupal installation to run the import to share the same database tables.

I have satisfactorily tested options 1, 2 and 4. Option 3 currently fails because of some Forena include statements that I guess could be added to the external script. I have only briefly looked at documentation on two sites sharing the same database - option 5.
What is the best way to go here so that the only overhead on the site is the database update ? Thanks.