L’interface est localisée ; les présentations et documents des Skills sont traduits automatiquement par IA dans votre langue. Le code, les commandes, chemins et termes techniques restent en version originale, et le document de l’auteur fait foi.
Explorer les Skills
Productivité · SKILL.md

spring-boot-scheduling

spring-boot-scheduling

Configure scheduled tasks and distributed locking with ShedLock in Spring Boot. Use when implementing @Scheduled tasks or distributed locking with ShedLock in Spring Boot.

Independent GitHub snapshot · Automated classification · Original documentation governs

Documentation de la Skill

GitHub

name: spring-boot-scheduling description: Configure scheduled tasks and distributed locking with ShedLock in Spring Boot. Use when implementing @Scheduled tasks or distributed locking with ShedLock in Spring Boot. metadata: triggers: files: - '/*Scheduler.java' - '/*Job.java' keywords: - scheduled - shedlock - cron

Spring Boot Scheduling Standards

Priority: P0 (CRITICAL)

Configure Scheduled Tasks

  • ThreadPool: ALWAYS configure dedicated TaskScheduler (default 1 thread). Enable with @EnableScheduling annotation.
  • Async: Keep @Scheduled methods light; offload to @Async/Queues. Wrap logic in try/catch; log errors and use @Retryable for retry on transient failures.

Lock Tasks with ShedLock

  • Problem: @Scheduled runs on ALL pods in K8s.
  • Solution: Use ShedLock to guarantee single execution.
  • Config: Set lockAtMostFor (deadlock safety) and lockAtLeastFor (debounce).

See implementation examples for ShedLock distributed task configuration and scheduler pool setup.

Anti-Patterns

  • No Default Pool: Configure dedicated TaskScheduler (default 1 thread).
  • No duplicates: Use ShedLock for distributed cron in multi-pod deployments.
  • No task state: Design tasks to idempotent; assume pod can restart.

References

Skills enregistrées