π οΈBackground Tasks and Jobs
Once off background tasks
PetalPro.BackgroundTask.run(fn ->
do_some_time_instensive_stuff()
end)Background jobs with Oban
defmodule PetalPro.Workers.ExampleWorker do
@moduledoc """
Example of how to do async work with Oban.
Run with:
Oban.insert(PetalPro.Workers.ExampleWorker.new(%{}))
"""
use Oban.Worker, queue: :default
require Logger
@impl Oban.Worker
def perform(%Oban.Job{} = _job) do
today = Timex.now() |> Timex.to_date()
Logger.info("ExampleWorker: Today is #{today}")
:ok
end
end
Cron jobs
Last updated
Was this helpful?
