question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Is there any configuration to do throttling for concurrent blob downloads?[QUERY]

See original GitHub issue

Query/Question

Hi SDK team, our project is using Azure blob as file storage, and we will store plenty of zip files, about size of around 50M. As some background from my expriements, I know the blob SDK is backed by reactor netty, and if I issue concurrent downloads for the 50M files, netty will consume pretty direct memory, causing memory fault once exceeded the JVM direct memory limit. This is not what we want. So I wonder if I have no mean to bypass the netty direct memory limitation(ideal way would be the socket bytes streamed to local file directly without help of memory), is there any configuration or parameter to do throttling ? Like,

  • I know the direct memory limit and blob file size, I can guess the concurrent download requests upper limit.
  • I can set the configuration with the guessing limit.
  • When the limit reaches, following downloads will be waiting or just fail directly.

To be some supplement, BlobClient.downloadWithResponse() will be called concurrently in my case.

Why is this not a Bug or a feature Request?

I don’t know whether the direct memory outage should be one bug or not, but I am not sure whether the throttling config exists or not, this is one question rather than FR.

Setup (please complete the following information if applicable)😗*

  • OS: Windows 10 pro, 1809 build
  • IDE : IntelliJ 2019.3
  • Version of the Library used: 12.0.0

Issue Analytics

  • State:closed
  • Created 4 years ago
  • Comments:7 (6 by maintainers)

github_iconTop GitHub Comments

1reaction
joshfreecommented, Feb 18, 2020

@anuchandy can you please follow up on the reactor-netty toggle specific portion of this question and ensure any toggles also get documented in the java repo’s wiki?

0reactions
rickle-msftcommented, Mar 23, 2020

I am going to close this issue as I believe all parts of the question have been addressed and it has been inactive for a while. Please feel free to reopen if there are more questions.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Managing concurrency in Blob storage - Azure - Microsoft Learn
Learn how to manage multiple writers to a blob by implementing either optimistic or pessimistic concurrency in your application.
Read more >
Azure blob storage throttling - Stack Overflow
Considering for download data to local environment, except your network bandwidth and stablity, you have to compute the max concurrent number of ...
Read more >
Throttling the scalability of Azure Functions V2 | by Hammad Arif
For the Azure Storage queue as an input trigger, the following formula will determine the maximum parallel executions of the function.
Read more >
Microsoft Azure Blob Storage - Rclone
Here is an example of making a Microsoft Azure Blob Storage ... make a new one? n) New remote s) Set configuration password...
Read more >
Multiple storage accounts • Azure Storage Queues Transport ...
Endpoints running on the Azure Storage Queues transport using a single ... throttling once the maximum number of concurrent requests to the ......
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found