Table of Contents - GoodJob - a multithreaded, Postgres-based ActiveJob backend for Ruby on Rails
Pages
-
CHANGELOG
- Changelog
- v2.1.0 (2021-09-09)
- v2.0.5 (2021-09-06)
- v2.0.4 (2021-08-31)
- v2.0.3 (2021-08-31)
- v2.0.2 (2021-08-27)
- v1.99.1 (2021-08-27)
- v2.0.1 (2021-08-24)
- v2.0.0 (2021-08-24)
- v1.99.0 (2021-08-24)
- v1.13.2 (2021-08-18)
- v1.13.1 (2021-08-18)
- v1.13.0 (2021-08-18)
- v1.12.2 (2021-08-13)
- v1.12.1 (2021-08-05)
- v1.12.0 (2021-07-27)
- v1.11.3 (2021-07-25)
- v1.11.2 (2021-07-20)
- v1.11.1 (2021-07-07)
- v1.11.0 (2021-07-07)
- v1.10.1 (2021-06-30)
- v1.10.0 (2021-06-29)
- v1.9.6 (2021-06-04)
- v1.9.5 (2021-05-24)
- v1.9.4 (2021-05-18)
- v1.9.3 (2021-05-10)
- v1.9.2 (2021-05-10)
- v1.9.1 (2021-04-19)
- v1.9.0 (2021-04-16)
- v1.8.0 (2021-03-04)
- v1.7.1 (2021-01-27)
- v1.7.0 (2021-01-25)
- v1.6.0 (2021-01-22)
- v1.5.0 (2021-01-18)
- v1.4.1 (2021-01-09)
- v1.4.0 (2020-12-31)
- v1.3.6 (2020-12-30)
- v1.3.5 (2020-12-17)
- v1.3.4 (2020-12-02)
- v1.3.3 (2020-12-01)
- v1.3.2 (2020-11-12)
- v1.3.1 (2020-11-01)
- v1.3.0 (2020-10-03)
- v1.2.6 (2020-09-29)
- v1.2.5 (2020-09-17)
- v1.2.4 (2020-09-01)
- v1.2.3 (2020-08-27)
- v1.2.2 (2020-08-27)
- v1.2.1 (2020-08-21)
- v1.2.0 (2020-08-20)
- v1.1.4 (2020-08-19)
- v1.1.3 (2020-08-14)
- v1.1.2 (2020-08-13)
- v1.1.1 (2020-08-12)
- v1.1.0 (2020-08-10)
- v1.0.3 (2020-07-26)
- v1.0.2 (2020-07-25)
- v1.0.1 (2020-07-22)
- v1.0.0 (2020-07-20)
- v0.9.0 (2020-07-20)
- v0.8.2 (2020-07-18)
- v0.8.1 (2020-07-18)
- v0.8.0 (2020-07-17)
- v0.7.0 (2020-07-16)
- v0.6.0 (2020-07-15)
- v0.5.0 (2020-07-13)
- v0.4.0 (2020-03-31)
- v0.3.0 (2020-03-22)
- v0.2.2 (2020-03-08)
- v0.2.1 (2020-03-07)
- v0.2.0 (2020-03-06)
- v0.1.0 (2020-03-03)
- LICENSE
-
README
- GoodJob
- Table of contents
- Set up
- Compatibility
- Configuration
- Command-line options
good_job start
good_job cleanup_preserved_jobs
- Configuration options
- Global options
- Dashboard
- ActiveJob concurrency
- Cron-style repeating/recurring jobs
- Updating
- Upgrading minor versions
- Upgrading v1 to v2
- Go deeper
- Exceptions, retries, and reliability
- Exceptions
- Retries
- ActionMailer retries
- Timeouts
- Optimize queues, threads, and processes
- Database connections
- Execute jobs async / in-process
- Migrate to GoodJob from a different ActiveJob backend
- Monitor and preserve worked jobs
- PgBouncer compatibility
- Contribute
- Gem development
- Release
- License
Classes and Modules
- ActiveJob
- ActiveJob::QueueAdapters
- ActiveJob::QueueAdapters::GoodJobAdapter
- CreateGoodJobs
- GoodJob
- GoodJob::ActiveJobExtensions
- GoodJob::ActiveJobExtensions::Concurrency
- GoodJob::ActiveJobExtensions::Concurrency::ConcurrencyExceededError
- GoodJob::Adapter
- GoodJob::CLI
- GoodJob::Configuration
- GoodJob::CronManager
- GoodJob::CurrentExecution
- GoodJob::Daemon
- GoodJob::Engine
- GoodJob::ExecutionResult
- GoodJob::InstallGenerator
- GoodJob::Job
- GoodJob::JobPerformer
- GoodJob::Lockable
- GoodJob::LogSubscriber
- GoodJob::MultiScheduler
- GoodJob::Notifier
- GoodJob::Poller
- GoodJob::Railtie
- GoodJob::Scheduler
- GoodJob::Scheduler::ThreadPoolExecutor
- GoodJob::Scheduler::TimerSet
- GoodJob::UpdateGenerator
Methods
- ::_executables — GoodJob
- ::_shutdown_all — GoodJob
- ::active_job_id — GoodJob::CurrentExecution
- ::cleanup_preserved_jobs — GoodJob
- ::enqueue — GoodJob::Job
- ::exit_on_failure? — GoodJob::CLI
- ::from_configuration — GoodJob::Poller
- ::from_configuration — GoodJob::Scheduler
- ::logger — GoodJob::LogSubscriber
- ::loggers — GoodJob::LogSubscriber
- ::new — GoodJob::Adapter
- ::new — GoodJob::Configuration
- ::new — GoodJob::CronManager
- ::new — GoodJob::Daemon
- ::new — GoodJob::ExecutionResult
- ::new — GoodJob::JobPerformer
- ::new — GoodJob::MultiScheduler
- ::new — GoodJob::Notifier
- ::new — GoodJob::Poller
- ::new — GoodJob::Scheduler
- ::next_scheduled_at — GoodJob::Job
- ::notify — GoodJob::Notifier
- ::perform_with_advisory_lock — GoodJob::Job
- ::process_id — GoodJob::CurrentExecution
- ::queue_parser — GoodJob::Job
- ::reset — GoodJob::CurrentExecution
- ::reset_logger — GoodJob::LogSubscriber
- ::restart — GoodJob
- ::shutdown — GoodJob
- ::shutdown? — GoodJob
- ::task_observer — GoodJob::CronManager
- ::thread_name — GoodJob::CurrentExecution
- #_advisory_lockable_column — GoodJob::Lockable
- #advisory_lock — GoodJob::Lockable
- #advisory_lock! — GoodJob::Lockable
- #advisory_locked? — GoodJob::Lockable
- #advisory_unlock — GoodJob::Lockable
- #advisory_unlock! — GoodJob::Lockable
- #advisory_unlock_session — GoodJob::Lockable
- #advisory_unlockable_function — GoodJob::Lockable
- #advisory_unlocked? — GoodJob::Lockable
- #backtrace — GoodJob::ActiveJobExtensions::Concurrency::ConcurrencyExceededError
- #cache_count — GoodJob::Scheduler
- #change — CreateGoodJobs
- #check_pid — GoodJob::Daemon
- #cleanup_preserved_jobs — GoodJob::CLI
- #cleanup_preserved_jobs — GoodJob::LogSubscriber
- #cleanup_preserved_jobs_before_seconds_ago — GoodJob::Configuration
- #create — GoodJob::LogSubscriber
- #create_executor — GoodJob::Notifier
- #create_executor — GoodJob::Scheduler
- #create_migration_file — GoodJob::InstallGenerator
- #create_task — GoodJob::CronManager
- #create_task — GoodJob::Scheduler
- #create_thread — GoodJob::MultiScheduler
- #create_thread — GoodJob::Scheduler
- #create_timer — GoodJob::Poller
- #cron — GoodJob::Configuration
- #cron_manager_start — GoodJob::LogSubscriber
- #daemonize — GoodJob::Daemon
- #daemonize? — GoodJob::Configuration
- #delete_pid — GoodJob::Daemon
- #enable_cron — GoodJob::Configuration
- #enable_cron? — GoodJob::Configuration
- #enqueue — GoodJob::Adapter
- #enqueue_at — GoodJob::Adapter
- #executable? — GoodJob::Job
- #execute — GoodJob::Job
- #execute_async? — GoodJob::Adapter
- #execute_externally? — GoodJob::Adapter
- #execute_inline? — GoodJob::Adapter
- #execution_mode — GoodJob::Configuration
- #finished_job_task — GoodJob::LogSubscriber
- #finished_timer_task — GoodJob::LogSubscriber
- #good_job_concurrency_key — GoodJob::ActiveJobExtensions::Concurrency
- #good_job_control_concurrency_with — GoodJob::ActiveJobExtensions::Concurrency
- #in_server_process? — GoodJob::Adapter
- #instrument — GoodJob::Scheduler
- #job_query — GoodJob::JobPerformer
- #length — GoodJob::Scheduler::TimerSet
- #listen — GoodJob::Notifier
- #listen_observer — GoodJob::Notifier
- #listening? — GoodJob::Notifier
- #lockable_column_key — GoodJob::Lockable
- #lockable_key — GoodJob::Lockable
- #logger — GoodJob::LogSubscriber
- #max_cache — GoodJob::Configuration
- #max_threads — GoodJob::Configuration
- #name — GoodJob::JobPerformer
- #next — GoodJob::JobPerformer
- #next? — GoodJob::JobPerformer
- #next_at — GoodJob::JobPerformer
- #notifier_listen — GoodJob::LogSubscriber
- #notifier_notified — GoodJob::LogSubscriber
- #notifier_notify_error — GoodJob::LogSubscriber
- #notifier_unlisten — GoodJob::LogSubscriber
- #owns_advisory_lock? — GoodJob::Lockable
- #parsed_queues — GoodJob::JobPerformer
- #perform — GoodJob::Job
- #perform_job — GoodJob::LogSubscriber
- #pg_or_jdbc_query — GoodJob::Lockable
- #pid_status — GoodJob::Daemon
- #pidfile — GoodJob::Configuration
- #poll_interval — GoodJob::Configuration
- #queue_string — GoodJob::Configuration
- #rails_config — GoodJob::Configuration
- #ready_worker_count — GoodJob::Scheduler::ThreadPoolExecutor
- #remaining_cache_count — GoodJob::Scheduler
- #reset — GoodJob::Scheduler::TimerSet
- #restart — GoodJob::CronManager
- #restart — GoodJob::MultiScheduler
- #restart — GoodJob::Notifier
- #restart — GoodJob::Poller
- #restart — GoodJob::Scheduler
- #running? — GoodJob::CronManager
- #running? — GoodJob::MultiScheduler
- #scheduler_create_pool — GoodJob::LogSubscriber
- #scheduler_restart_pools — GoodJob::LogSubscriber
- #scheduler_shutdown — GoodJob::LogSubscriber
- #scheduler_shutdown_start — GoodJob::LogSubscriber
- #set_up_application! — GoodJob::CLI
- #shutdown — GoodJob::Adapter
- #shutdown — GoodJob::CronManager
- #shutdown — GoodJob::MultiScheduler
- #shutdown — GoodJob::Notifier
- #shutdown — GoodJob::Poller
- #shutdown — GoodJob::Scheduler
- #shutdown? — GoodJob::CronManager
- #shutdown? — GoodJob::MultiScheduler
- #shutdown? — GoodJob::Poller
- #shutdown_timeout — GoodJob::Configuration
- #start — GoodJob::CLI
- #start — GoodJob::CronManager
- #stats — GoodJob::Scheduler
- #supports_cte_materialization_specifiers? — GoodJob::Lockable
- #tag_logger — GoodJob::LogSubscriber
- #task_observer — GoodJob::Scheduler
- #timer_observer — GoodJob::Poller
- #update_migration_files — GoodJob::UpdateGenerator
- #validate! — GoodJob::Configuration
- #warm_cache — GoodJob::Scheduler
- #with_advisory_lock — GoodJob::Lockable
- #with_listen_connection — GoodJob::Notifier
- #write_pid — GoodJob::Daemon