[Azure Functions] Simplify large-payload configuration by reusing an existing storage connection
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 45/100
Hướng nghiên cứu
The issue is about simplifying configuration in the azure-functions-durable SDK. Start by reading PR #270 and the existing DFApp.configure_large_payloads method. Understand how Azure Functions storage connections (AzureWebJobsStorage) and the Durable backend are configured. The goal is to design a helper that reuses an existing connection without requiring manual BlobPayloadStore construction. Check the linked Microsoft documentation for host storage settings and Durable Azure Storage connection configuration.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Community feedback wanted
Would you use a simpler way to configure large-payload storage in the azure-functions-durable v2 SDK using a storage connection your Function App already has?
Please add a thumbs-up reaction to this issue if this would help, and comment with your use case. In particular:
- Would you use the Function App's host storage (
AzureWebJobsStorage), a separate Azure Storage backend account, or another named connection? - Do you use a connection string, system-assigned managed identity, or user-assigned managed identity? Is local development with Azurite important?
- Would explicitly choosing a connection name be sufficient, or is automatic discovery of the Durable backend's account important?
- Is constructing a
BlobPayloadStoreexplicitly a meaningful obstacle today?
This issue is gathering demand and requirements, not committing to an API or delivery timeline.
Context
PR #270 adds explicit configuration through DFApp.configure_large_payloads(payload_store=...). We are keeping that implementation simple: applications supply their own payload store.
A potential follow-up would reuse existing Functions storage configuration so users do not need to construct a blob store or repeat connection-resolution code. Host storage and the Azure Storage Durable backend often use the same account, but can be configured separately.
Possible direction
Illustrative API only; these convenience forms are not implemented:
app.configure_large_payloads() # Opt in, using AzureWebJobsStorage
app.configure_large_payloads(connection_name="DurableStorage")
Calling the API would remain an explicit opt-in to SDK payload externalization. The existing payload_store=... form would remain available for full control, mutually exclusive with connection-based configuration.
Automatic discovery of the Azure Storage backend's account is a separate option to evaluate based on feedback, rather than a prerequisite for a named-connection helper.
Design considerations
- Resolve both connection strings and identity-based connection settings, including identity selection and local development behavior.
- Backend discovery would need to honor effective host configuration, environment overrides, and supported aliases. The Python SDK does not currently receive a resolved backend storage configuration.
- Account selection must be stable across workers and deployments so existing payload references remain readable. Client bindings targeting other connections also need consideration because payload configuration is currently process-wide.
- Use a dedicated SDK payload container, not the backend's large-message container. Sharing an account does not make backend purge clean up SDK payload blobs; permissions and retention remain important.
- Azure Storage backend large-message handling and SDK payload externalization are separate mechanisms. This proposal only simplifies configuration of the latter.
References: Functions host storage settings and Durable Azure Storage connection configuration.
- Ngôn ngữ chính
- Python
- Star
- 40
- Fork
- 33
- Merge trung bình
- 7 giờ 54 phút
- 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 microsoft/durabletask-python
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
microsoft/durabletask-python#269 ·
-
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 45/100
microsoft/durabletask-python#268 ·
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 72/100
microsoft/durabletask-python#266 ·
-
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 38/100
microsoft/durabletask-python#249 ·
-
bug Functions Parity
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 35/100
microsoft/durabletask-python#241 · 2 bình luận ·
Tất cả issue của microsoft/durabletask-python
Issue tương tự
-
bug confirmed issue
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
open-webui/open-webui#30750 · 1 bình luận ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
-
enhancement
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
OpenwaterHealth/openmotion-bloodflow-app#604 · 1 bình luận ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
-
good first issue
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 90/100