All pages

Run

Background services

Processes that should always run but serve no web pages: a queue worker, a scheduler, a bot.

Adding one

On the project page under Background services, give it a name and a start command. Or:

Terminal
arrah services add my-api worker --memory 256 -- python worker.py
arrah logs my-api --service worker

How it behaves

  • It runs from the same build as the web application, with its own start command and size, and has the project's variables.
  • The application reaches it privately at http://name:port. It has no public address.
  • Adding, changing or removing one takes effect on the next deployment. It is rolled back, put to sleep and woken with the application.
  • If it stops it is restarted. If it will not stay up it is marked failed and you are notified; the web application keeps running.
  • Up to 5 per project.

For work that runs at set times and then exits, use a scheduled job. For a part that is built separately or needs its own address, create a second project and put both in a group, which gives them a private network.