Дизайнеры приложений часто сталкиваются с вопросом о том, хранить ли большие объекты в файловой системе или в базе данных. Часто это решение принимается для простоты дизайна приложений. Иногда также используются измерения производительности. В этой статье рассматривается вопрос о фрагментации - одной из операционных проблем, которые могут повлиять на производительность и/или управляемость системы, как развернутую долгосрочную перспективу. Как и ожидалось от общей мудрости, объекты меньше 256 тыс. Лучше всего хранятся в базе данных, в то время как объекты, более 1 млн, лучше всего хранятся в файловой системе. Между 256K и 1 м, коэффициент чтения: записи и скорость перезапись объектов или замены являются важными факторами. Мы использовали понятие «возраста хранения» или количество перезаписей объектов как способ нормализации времени на стенке. Возраст хранения позволяет нашим результатам или аналогичным результатам применяться по ряду коэффициентов чтения: записи и скорости замены объектов.
, что, в свою очередь, я решил реализовать FileStream в обработке больших файлов. Логика сравнения размера файлов? Это означает, что файлы меньше 256K считаются небольшими размерами файлов, в то время как файлы, превышающие 1 м , считаются большими размерами файлов. Я думаю, что 1m эквивалентен 1 МБ . Этот вопрос имеет отношения с этой статьей: загрузка файла ASP.NET Core Blazor. Отфильтруйте предел размера файла, который должен быть собран и сохранен, например, чтобы предотвратить загрузку больших файлов: < /p>
Код: Выделить всё
@if (myModel.Img is not null)
{
[img]@myModel.Img[/img]
}
@code {
private async Task HandleImageUpload(InputFileChangeEventArgs e)
{
long threeMB = 3L * 1024L * 1024L; //3 MB limit
var file = e.File;
var stream = file.OpenReadStream(maxAllowedSize: threeMB);
var buffer = new byte[file.Size];
await stream.ReadAsync(buffer);
var base64 = Convert.ToBase64String(buffer);
myModel.Img = $"data:{file.ContentType};base64,{base64}";
}
}
Мой вопрос:
Направо? HandleImageUpload Метод, где я не могу отфильтровать размер файла. Это не бросает исключение и не отклоняет выбор файла, который больше 3 МБ .
и мой вопрос об этом аргументировании,
Подробнее здесь: https://stackoverflow.com/questions/797 ... d-a-databa
Мобильная версия