Это обсуждение само по себе, и некоторые из моих коллег проводят и думают, что я приду сюда и посмотрю, что, если есть общий консенсус по этому вопросу.
В основном это сводится к следующим двум мнениям о вызовах базы данных: 1. Сделайте один большой вызов, чтобы получить все, что может понадобиться для сокращения базы данных, количество вызовов БД. 2. Выполните меньшие отдельные вызовы, основываясь на том, что требуется для уменьшения размера. Вызовы БД
Где это особенно важно, это общий код. Мы будем использовать пример класса Employee, так как это довольно просто.
Предположим, что у вашего класса Employee есть 10 атрибутов значений (имя, фамилия, адресат и т. Д.), А затем 2 атрибута класса ... 1, указывающий на класс Department, а затем 1 супервизор, указывающий на другой объект Employee.
В мышлении № 1 вы должны сделать один вызов, который возвращает данные о сотрудниках, а также поля, необходимые для заполнения атрибутов Department и Supervisor ... или, по крайней мере, поля, которые чаще всего используются из этих подобъектов.
В мышлении № 2 сначала нужно заполнить объект Employee, а затем заполнить только объекты Department и Supervisor, если и когда они действительно запрашиваются.
Позиция 2 довольно прямолинейна ... минимизируйте размер запросов и количество объектов базы данных, которые необходимо обрабатывать каждый раз, когда выполняется один из этих запросов. Позиция # 1 состоит в том, что даже если бы это могло быть реализовано должным образом, сам факт, что код должен был бы сделать многократные соединения, вызовет большую нагрузку на соединение между веб-сервером и базой данных, а не уменьшит его.
Движущая сила исследований заключается в том, что объем трафика между нашим веб-сервером и сервером базы данных выходит из-под контроля.