Investigate Python SDK concurrency limitations
@seherv đang làm issue này rồi.
Từ ngày 28/4/2026.
Đánh giá
Issue này chưa được đánh giá.
Mô tả
The Python Dapr SDK currently relies on threadpool-based execution for workflow and activity processing. This model has known limitations:
- The GIL (Global Interpreter Lock) constrains true parallelism for CPU-bound work
- Thread pool exhaustion under high concurrency can delay sidecar acknowledgments
Native asyncio execution would allow the SDK to handle a higher volume of concurrent workflow tasks without the overhead and contention introduced by thread management, reducing sidecar response latency under sustained load.
Goals
- Quantify the throughput and latency characteristics of the current threadpool implementation under sustained workflow load
- Rewrite workflow and activity execution to use native asyncio
- Validate that the rewrite improves sidecar response latency and throughput under load conditions
Tasks
- Benchmark current threadpool implementation — measure workflow throughput, activity concurrency, and sidecar acknowledgment latency under sustained load
- Document failure conditions — identify load thresholds at which sidecar response times begin to degrade
- Design asyncio execution model — propose the replacement architecture for workflow and activity dispatch
- Implement asyncio rewrite — replace threadpool-based execution with native asyncio in the workflow worker
- Ensure existing workflow and activity behavior is preserved
- Load validate — re-run benchmarks against the rewritten implementation under production-representative load and confirm improvement in sidecar response latency and throughput
- Document operational guidance — update SDK documentation with concurrency configuration recommendations for workflow-heavy deployments
- Write Dapr OSS blog on findings
- Ngôn ngữ chính
- Python
- Star
- 272
- Fork
- 152
- Merge trung bình
- 3 ngày 21 giờ
- Pull request đã merge (30 ngày)
- 5
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của dapr/python-sdk
-
dapr-ext-workflow good first issue kind/enhancement P2
Độ khó 2/5 1-2 ngày Mức phù hợp với người mới 72/100
dapr/python-sdk#853 · 4 bình luận ·
-
kind/bug
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 45/100
dapr/python-sdk#1230 ·
-
feature-request
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 76/100
dapr/python-sdk#1214 · 1 người được giao ·
-
dapr-ext-workflow kind/enhancement
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 78/100
dapr/python-sdk#1213 ·
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 76/100
dapr/python-sdk#1200 ·
Tất cả issue của dapr/python-sdk
Issue tương tự
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
xinnan-tech/xiaozhi-fde-talk#263 ·
-
rules
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 90/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
huggingface/Repo2RLEnv#163 · 1 bình luận ·
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 95/100
huggingface/sentence-transformers#4074 ·
-
comp/dashboard invalid P3
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
NousResearch/hermes-agent#121143 ·