Их много суетится Magento 2
, в них включены такие понятия, как Namespaces и т. Д. Мне просто любопытно узнать, как обрабатывается поток REQUEST Magento 2
, может кто-нибудь дать мне краткое изложение.
Интересный момент из презентации Anthol Krit
Magneto2 имеет 8000 классов по сравнению с 2700 в Magento 1
magento2
architecture
mvc
Димаг Хараб
источник
источник
Ответы:
index.php
создает экземпляр приложения (\Magento\Framework\App\Http
) с помощью objectManager (который создается до этого в начальной загрузке) и вызывает методlaunch
.Экземпляр Http-приложения выполняет начальную маршрутизацию: для определения области, которая должна быть загружена, требуется первая часть URL (admin / frontend / rest / ...).
Когда область определена, конфигурация для этой области загружается (в отличие от Magento 1, где была загружена вся конфигурация).
Затем объект приложения вызывает
Magento\Framework\App\FrontControllerInterface::dispatch
запрашиваемую область. Front Controller выполняет маршрутизацию так же, как в Magento 1: все маршрутизаторы повторяются для соответствия запросу. Маршрутизатор, который соответствует запросу, возвращает экземпляр ActionController, которому соответствуетFrontController
. Этот процесс более эффективен, потому что используются только маршрутизаторы одной области (административный маршрутизатор не используется во внешнем интерфейсе). Все дополнительное поведение было перенесено из переднего контроллераplugins
изFrontController
и контроллеров действий.Когда
FrontController
получает экземпляр контроллера действия, он вызываетdispatch
его. Контроллер действий выполняет свою задачу и возвращает экземпляр некоторой реализацииResultInterface
(например, page, redirect, ...).FrontController
просто возвращаетсяResultInterface
к экземпляру приложения, который отображает ответ.Я сделал презентацию по этому вопросу на Meet Magento NL: http://www.slideshare.net/Dutchento/anton-kril-mm15nl
источник
Проверьте ссылки ниже. Поток запросов определяется очень красиво.
http://www.dckap.com/blog/request-flow-in-magento-2/
http://brideo.co.uk/magento2/Request-Flow-In-Magento-2/
источник
Вот несколько ресурсов на эту тему для тех, кто заинтересован:
источник