Repository navigation
feat(workspace): support HTTP replicas without background jobs - #790
Merged
Merged
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Additional backend replicas currently start another timer loop and browser cleanup sweep in every worker. Add BACKGROUND_JOBS_ENABLED (default true) so the second HTTP node can serve requests without adding schedulers. Thread limits, readiness, and browser shutdown remain active. Both startup tasks are cancelled and awaited during shutdown.
Document shared TLS Valkey, database pool budgets, load-balancer settings, and rollout/rollback constraints. This change keeps existing scheduling on the first node; it does not add scheduler failover or fix existing multi-worker timer races.
Validation: six focused lifecycle and timer-maintenance tests passed in the deployment test image. Tests cover default/enabled/disabled jobs, thread-limit initialization, and cancellation of both startup tasks.
Deployed to both SFO3 nodes as release 48fa83a. Shared TLS Valkey and cross-node cache/pubsub tests passed; public authenticated polling/files and SSE passed. After DNS cutover to the load balancer, a 60-second sample of 21,747 requests averaged 41 ms / p95 112 ms with zero 5xx; CPU averaged 55% and 20% on the two nodes. Scheduled jobs remain on the first node; managed Valkey is single-node, so this does not provide full-stack high availability.