Смотрю сейчас видео про сравнение производительности синхронных и асинхронных операций в EF Core. Всем известно, что мы должны использовать асинхронные функции при обращении к базе данных, но. . . Если вы работаете с MS SQL Server, то стоит очень серьезно подумать.
Во-первых, на больших данных EF Core просаживается значительно. При запросе, который вытаскивает из базы 2 мегабайта асинхронный будет выполняться 1.3 секунды, а в случае с 5 мегабайтами 9.5 секунд. При этом синхронные функции будут работать почти в сотню раз быстрее! Миф о необходимости использования асинхронности разбит самими MS.
Но тут же они сравнивают с Postgres и узнают, что там такой проблемы нет. Там синхронные и асинхронные запросы выполняются примерно одинаково и на много быстрее, чем MS SQL. Вы всё ещё платите за ДОРОГУЩУЮ лицензию MS SQL?
Проблема производительности асинхронного доступа к MS SQL Server оказалась в SQLClient. Если вы используете EfCore и MS SQL Server и при этом у вас есть запросы, которые вытягивают много данных из базы (text, varchar(max) и др), то срочно обновляйте SQLClient. А лучше переходите на Postgres.
Понравилось? Кликни Лайк, чтобы я знал, какой контент более интересен читателям. Заметку уже лайкнули 1 человек
Привет, Миша нравиться твоя ава тут рисованный ты в очках.
Знаю делал это ИИ, подскажи какой именно делал хочу себе такое сделать
Встроенный в Apple macOS
Хотите найти еще что-то интересное почитать? Можно попробовать отфильтровать заметки на блоге по категориям.