Azure / Azure/AppConfiguration

Batch requests for multiple App Configuration references in App Services

Open
#1,088 0 comments 0 reactions 0 assignees View on GitHub
Azure App Services Azure Functions enhancement
Dominant language
No language data
Stars
263
Forks
82
Avg merge
3d 15h
Merged PRs (30d)
6

Description

App Config references in Azure App Service are currently resolved individually, with each reference triggering a separate GET request to AppConfig service. However, since AppConfig supports retrieving multiple key-values in a single request, AppService platform could optimize performance by batching these references into fewer GET requests. This would allow users to reference more AppConfig key-values without hitting throttling limits.

Based on customer feedback:

> I'm hitting our App Configuration Service (ACS) from an Azure Function using app configuration references. I notice that a request appears to be made to ACS _for each app setting individually_, ie the config retrieval is not batched into a single call.
>
>
>
> I can retrieve all of our app config keyvalues using azure cli eg
>
> ```
>
> az appconfig kv list --key "/ian/api/dev/*" --connectionstring "Endpoint ..."
>
> ```
>
> where "/ian/api/dev/" is the common prefix of all of my app config key names.
>
>
>
> Obviously the key names _could_ be completely different with no common prefixing.
>
>
>
> But I wonder whether some logic could be built into the "fetch" code that checks for common prefixing and retrieves a whole batch (up to 100 entries?) in a single call. Retrieved keyvalues could then be matched to app settings based on their full keyname.
>
>
>
> Would eliminate some of the 429s we're seeing (even in Standard tier).
>
>
>
> Thanks!

_Originally posted by @ianrandell-sh in [#62](https://github.com/Azure/AppConfiguration/issues/62#issuecomment-1557464451)_

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.