Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

Investigate Python SDK concurrency limitations

未关闭
#975 3 条评论 3 个 reaction 已指派 1 人 在 GitHub 查看

@seherv 已经在做这个了。

开始于 2026年4月28日。

评估

这个 Issue 还没有评估数据。

描述

P1

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
主要语言
Python
星标
272
派生
152
平均合并
3 天 21 小时
30 天内合并 PR
5

贡献指南

打开贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

dapr/python-sdk 的其他 Issue

查看 dapr/python-sdk 的全部 Issue

相似的 Issue

更多 Python Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。