Отвечу всем сразу. Я не призываю использовать пушер или любой дргуой сервис (для пет-проектов есть бесплатный тариф в который с головой укладываешься на первое время). Я говорю о том, что это возможный вариант. При этом, существует возможность выучить новый инструмент, с которым Laravel умеет общаться, делается это весьма не сложно - дело пары-тройки часов работы - я про socket.io. При желании уже есть готовый инструмент - laravel-echo-server, у которого под капотом как раз socket и лежит.
Максим Федоров, Иногда - да. В данном случае, зачастую, в приложениях Enterprise уровня для этих целей используется такой паттерн, как Context. Зачастую его считают антипаттерном, но он решает множество проблем.
Тут могу сказать только одно. Смотри. Внешний класс ты должен передавать, как зависимость (и это правильно с точки зрения архитектуры). Как следствие, ты можешь сделать мок этого класса, когда его передаешь. Это уже элементарно - можно посмотреть документацию.
Виталий, Ты уверен (еще)? Нода значительно медленнее, чем PHP. Больше того скажу, это php без припарок. Достаточно включить opcodes, использовать, например, roadrunner вместо php-fpm и выигрыш будет на порядки.
Rsa97, тогда не удивительно. В целом, такой подход очень хорош, но на мой взгляд, здесь, в целом, можно поискать более элегантные способы. Уж очень сложный для чтения код получился.
serginhold, да, чтобы наизусть, как стихотворение. Желательно, чтобы он знал их и понимал. Он не всегда будет им следовать, увы, это нормально, но знать их ему надо обязательно. Тем более, они не так сложны для понимания и даже в какой-то мере естественны в процессе написания кода.
Евгений Самсонов, не проще. Суть запроса в том, чтобы отфильтровать первую таблицу, предположим, машины, по второй таблице, предположим, цены.
Найти машину по цене до 800 000 рублей. Запрос в таблицу машины, к которой джоинится таблица цен с последней по дате цене и фильтрация идет по ней.
Плюс для примера, у машины есть еще характеристики, которые лежат в отдельной таблице и эти таблицы также джойнятся.
Увы, базу проектировал не я и такая "нормализация", которая в ней сделана это тлен. Однако, поменять ее означает переписать огромную базу legacy кода, что сейчас - роскошь. Она переписывается потихоньку. Пример с машинами выдуман, прикладная область и суть запроса немного отличаются.