Как правильно использовать конструктор запросов Query в Yii2?
Откройте Debug фреймворка, найдите повторяющиеся запросы. Определите с какого места они производятся. Оптимизируйте работу так, чтобы данные с БД использовались повторно, а не запрашивались каждый разУ меня подозрения возникли...
С подозрениями нужно идти к гадалке. Сделайте отладку, определите что, где и как тормозит и исправьте.
А почему не сделать модель и уже от нее делать запросы?User::find()->all();
а уже рекурсию используйте как описано в документации. Ведь не всегда Вам данные нужны по этой рекурсии.