Производительность запросов к БД в многоуровневом приложении

#asp.net-core #entity-framework-core #service-layer #data-layers

#asp.net-ядро #сущность-основа-ядро #уровень обслуживания #слои данных

Вопрос:

Я создаю многоуровневое приложение AspNetCore, которое, в свою очередь, будет иметь большую базу данных. Я использую ядро entity Framework и асинхронные вызовы для извлечения данных из БД в базе данных. Эти вызовы, которые я ожидаю. На уровне обслуживания я также использую асинхронные вызовы на уровне данных и ожидаю их. На уровне обслуживания я преобразую данные для вызовов api или страниц razor с помощью LINQ.

Мне интересно, разумно ли это при рассмотрении производительности, или было бы лучше преобразовать данные либо в БД, либо в запросах уровня данных?

Ответ №1:

Это разумно. Если производительность запроса данных не совсем удовлетворительна, вы можете извлечь ее отдельно. Вложенная библиотека и вложенная таблица. База данных в памяти может использоваться для более частых и больших объемов данных.

Комментарии:

1. Просто чтобы уточнить, вы советуете продолжать передавать данные через слои перед преобразованием, если производительность значительно не снизится? Как насчет ожидания? Это необходимо на всех этапах или только на последнем?