Медленно качаются FileStream'ы из MS SQL

104
04 сентября 2021, 13:20

В общем, есть метод, который шлет запрос к БД и выкачивает 2 файла весом ~150мб. Т.е по очереди выкачивается по 1 файлу.

Файлы хранятся в виде стрима.

Проблема в том, что первый файл выкачивается практически моментально, а второй качается со скоростью улитки... Т.е по наблюдения он выкачал 14/150 мб за 5 минут.

Метод скачивания вообще достаточно простой и тривиальный- порциями копировать в массив byte[4096] и записывать в файл.

Утилизация сети маленькая.

Может у самого MS SQL стрима, есть какие-то подводные камни?

Ридер открывается так:

 using (var reader = cmd.ExecuteReader(CommandBehavior.SequentialAccess | CommandBehavior.SingleRow))

А дальше читается так:

 var buf = new byte[4096];
    long pos = 0;
    using (var fs = File.Create(fileName))
    {
        long readden;
        do
        {
            readden = reader.GetBytes(0, pos, buf, 0, buf.Length);
            fs.Write(buf, 0, (int) readden);
            pos += readden;
        } while (readden != 0);
    }

Стрим не используется, так как проект Net Framework 4.0, а стримы завезли в 4,5.

READ ALSO
передача данных между combobox'ами разных форм

передача данных между combobox'ами разных форм

Подскажите как передать данные между комбобоксами с главной формы на дочернюю

122
Подсчет сокращенных ссылок

Подсчет сокращенных ссылок

Есть у меня задача, суть которой в том, что на вход программы подаю урл, получаю сокращенный урл, при этом урлы хранятся в базеИ нужен подсчет...

106
Ошибка pymysql.err.IntegrityError

Ошибка pymysql.err.IntegrityError

Пытаюсь сделать insert новостей в бдИ чтобы повторные новости не добавлялись

107
Как вывести теги?

Как вывести теги?

есть запрос для ввода статей

239