[PR #336] [MERGED] Add counting semaphore to control distributed max concurrency #2733

Closed
opened 2026-03-15 21:00:25 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/hibiken/asynq/pull/336
Author: @ajatprabha
Created: 10/27/2021
Status: Merged
Merged: 11/3/2021
Merged by: @hibiken

Base: masterHead: rate-limit


📝 Commits (10+)

  • b18f27b ignore editor config
  • e869722 add counting semaphore to control concurrency across multiple asynq servers
  • cb720fc add example
  • 34cc2d8 use sorted-set to release stale locks
  • 910162f rename file alias.go => context.go
  • ee65291 use public GetRetryCount func
  • 4bbbdb3 rename vars and update docs
  • f7f6c93 separate out error test cases
  • 9ce8108 fix lua script
  • dde93bf add copyright comment

📊 Changes

8 files changed (+661 additions, -56 deletions)

View changed files

📝 .gitignore (+2 -1)
📝 context.go (+5 -50)
internal/context/context.go (+87 -0)
📝 internal/context/context_test.go (+4 -4)
📝 processor.go (+2 -1)
x/rate/example_test.go (+40 -0)
x/rate/semaphore.go (+114 -0)
x/rate/semaphore_test.go (+407 -0)

📄 Description

Closes #328


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/hibiken/asynq/pull/336 **Author:** [@ajatprabha](https://github.com/ajatprabha) **Created:** 10/27/2021 **Status:** ✅ Merged **Merged:** 11/3/2021 **Merged by:** [@hibiken](https://github.com/hibiken) **Base:** `master` ← **Head:** `rate-limit` --- ### 📝 Commits (10+) - [`b18f27b`](https://github.com/hibiken/asynq/commit/b18f27bad77421420382de3afdd5ad7c93ebff68) ignore editor config - [`e869722`](https://github.com/hibiken/asynq/commit/e869722b704f432b8ef74be9bf3c933003f61714) add counting semaphore to control concurrency across multiple asynq servers - [`cb720fc`](https://github.com/hibiken/asynq/commit/cb720fc10bf2b360079c666ebdc4e8ebe111ee33) add example - [`34cc2d8`](https://github.com/hibiken/asynq/commit/34cc2d8081a6c739a2d5cc87b96e3d288a8b4f37) use sorted-set to release stale locks - [`910162f`](https://github.com/hibiken/asynq/commit/910162f067058786e68c5b609bc535d444768b08) rename file alias.go => context.go - [`ee65291`](https://github.com/hibiken/asynq/commit/ee6529191ff90f5608308648c1424de4389351a2) use public GetRetryCount func - [`4bbbdb3`](https://github.com/hibiken/asynq/commit/4bbbdb30cf1ea797113ff62a5084c39c2a9f0844) rename vars and update docs - [`f7f6c93`](https://github.com/hibiken/asynq/commit/f7f6c93271cb23bf1a54f5298fda7f766cd84969) separate out error test cases - [`9ce8108`](https://github.com/hibiken/asynq/commit/9ce81080b23b1e2bf03fe33e3d08071a46cf5cd7) fix lua script - [`dde93bf`](https://github.com/hibiken/asynq/commit/dde93bfc12cf6a1881d8bed9ee9d72462838a15e) add copyright comment ### 📊 Changes **8 files changed** (+661 additions, -56 deletions) <details> <summary>View changed files</summary> 📝 `.gitignore` (+2 -1) 📝 `context.go` (+5 -50) ➕ `internal/context/context.go` (+87 -0) 📝 `internal/context/context_test.go` (+4 -4) 📝 `processor.go` (+2 -1) ➕ `x/rate/example_test.go` (+40 -0) ➕ `x/rate/semaphore.go` (+114 -0) ➕ `x/rate/semaphore_test.go` (+407 -0) </details> ### 📄 Description Closes #328 --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-03-15 21:00:25 +03:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/asynq#2733
No description provided.