SlideShare a Scribd company logo
1 of 23
1000 миллисекунд из жизни Magento Евгений Ивашин, разработчик Magento Core
Представьте себя на месте Magento Представьте себе что вас зовут Magento, вы весите около 60 мегабайт и состоите из более чем 320 тысяч строк кода.
Представьте себя на месте Magento Представьте, что одни ваши знакомые хотят, чтобы вы весили меньше, другие – чтобы вы бегали как спринтер, третьи – чтобы вы были способны сделать сальто и встать на мостик без усилий.
Представьте себя на месте Magento Представьте,  что окружающие никогда не довольны вашими успехами, нагружают вас дополнительными упражнениями и в то же время не прекращают требовать от вас быть еще гибче и еще быстрее.
Представьте себя на месте Magento Представили? А теперь представьте, что вы должны быть готовы: обслуживать тысячи клиентов в час никому не отказывать в помощи никого не заставлять ждать
Тук-тук (0.000 ms) Пользователь  набрал в браузере http://my.magento.installation.com/customer/account/login Веб-сервер все запросы переадресовывает  на index.php
Запуск основного цикла Magento (0.005 ms) Пользователь  набрал в браузере http://my.magento.installation.com/customer/account/login Веб-сервер все запросы переадресовывает  на index.php Mage::run()
Экскурсия по фабрике ::getModel() ::app() ::getConfig() ::register() ::getBaseUrl() ::getSingleton() ::getStoreConfig() ::getBaseDir() ::registry() ::helper() ::getUrl() ::getResourceModel()
Инициализация приложения (0.020 ms) Пользователь  набрал в браузере http://my.magento.installation.com/customer/account/login Веб-сервер все запросы переадресовывает  на index.php Mage::run() Инициализация класса приложения Mage_Core_Model_App
Запуск основного цикла приложения (0.038 ms) ... Mage::run() Инициализация класса приложения Mage_Core_Model_App Запускается основной цикл приложения Mage::app()->run()
Загрузка базовой конфигурации (0.123 ms) ... Mage::run() Инициализация класса приложения Mage_Core_Model_App Запускается основной цикл приложения Mage::app()->run() Загрузка базовой конфигурации из app/etc
Загрузка базовой конфигурации 1 app/etc/*.xml System Configuration
Инициализация модулей (0.175 ms) ... Инициализация класса приложения Mage_Core_Model_App Запускается основной цикл приложения Mage::app()->run() Загрузка базовой конфигурации из app/etc Инициализация каждого модуля из app/etc/modules ... Module 1 Module 2 Module 3 Module N
Инициализация модулей 1 2 app/etc/*.xml app/etc/modules/*.xml app/<Module 1 path>/etc/*.xml app/<Module 2 path>/etc/*.xml app/<Module N path>/etc/*.xml app/etc/local.xml System Configuration 3 … N+1 4 N
Запуск цикла диспетчеризации (0.591 ms) ... Запускается основной цикл приложения Mage::app()->run() Загрузка базовой конфигурации из app/etc Инициализация каждого модуля из app/etc/modules ... Module 1 Module 2 Module 3 Module N Инциализация Front Controller  и запуск его цикла диспетчеризации
Попытка сопоставить роутер с URL (0.613 ms) ... Инициализация каждого модуля из app/etc/modules ... Module 1 Module 2 Module 3 Module N Инциализация Front Controller  и запуск его цикла диспетчеризации Перебор всех сконфигурированных роутеров ... Router 1 Router 2 Router 3 Router N
Вычисление и запуск action (0.620 ms) ... Инциализация Front Controller  и запуск его цикла диспетчеризации Перебор всех сконфигурированных роутеров ... Router 1 Router 2 Router 3 Router N Вычисление Action Controllerи Action, запуск $actionController->actionAction()
Анатомия контроллера Обработка входных параметров из Request Загрузка Layout $this->loadLayout(); Работа с отдельными блоками в Layout Отрисовка Layout $this->renderLayout();
Обновления Layout
Генерация блоков
Рендеринг (~1.000 ms)
The End

More Related Content

Viewers also liked

Управление продуктом в стиле Magento Unified Process
Управление продуктом в стиле Magento Unified ProcessУправление продуктом в стиле Magento Unified Process
Управление продуктом в стиле Magento Unified ProcessMagecom Ukraine
 
Применение компонент-ориентированной архитектуры для написания Magento Extens...
Применение компонент-ориентированной архитектуры для написания Magento Extens...Применение компонент-ориентированной архитектуры для написания Magento Extens...
Применение компонент-ориентированной архитектуры для написания Magento Extens...Magecom Ukraine
 
Doctrine 2
Doctrine 2Doctrine 2
Doctrine 2zfconfua
 
Эволюция ZF: архитектура, шаблоны, рефакторинг
Эволюция ZF: архитектура, шаблоны, рефакторингЭволюция ZF: архитектура, шаблоны, рефакторинг
Эволюция ZF: архитектура, шаблоны, рефакторингzfconfua
 
Встречайте Zend Framework 2.0
Встречайте Zend Framework 2.0Встречайте Zend Framework 2.0
Встречайте Zend Framework 2.0zfconfua
 
Мобильные клиенты интернет-магазинов
Мобильные клиенты интернет-магазиновМобильные клиенты интернет-магазинов
Мобильные клиенты интернет-магазиновMagecom Ukraine
 
Преимущества использования полнотекстового поиска в интернет-магазинах
Преимущества использования полнотекстового поиска в интернет-магазинахПреимущества использования полнотекстового поиска в интернет-магазинах
Преимущества использования полнотекстового поиска в интернет-магазинахMagecom Ukraine
 
Реализация шаблонов корпоративных приложений в Magento
Реализация шаблонов корпоративных приложений в MagentoРеализация шаблонов корпоративных приложений в Magento
Реализация шаблонов корпоративных приложений в MagentoMagecom Ukraine
 
NoSQL и Zend Framework (Никита Грошин)
NoSQL и Zend Framework (Никита Грошин)NoSQL и Zend Framework (Никита Грошин)
NoSQL и Zend Framework (Никита Грошин)zfconfua
 
Юнит тестирование в Zend Framework 2.0
Юнит тестирование в Zend Framework 2.0Юнит тестирование в Zend Framework 2.0
Юнит тестирование в Zend Framework 2.0zfconfua
 
Хранение, обработка и отдача статики с использованием \Zend\File. Опыт социал...
Хранение, обработка и отдача статики с использованием \Zend\File. Опыт социал...Хранение, обработка и отдача статики с использованием \Zend\File. Опыт социал...
Хранение, обработка и отдача статики с использованием \Zend\File. Опыт социал...zfconfua
 
Применение Scrum и Kanban для разработки web-приложений
Применение Scrum и Kanban для разработки web-приложенийПрименение Scrum и Kanban для разработки web-приложений
Применение Scrum и Kanban для разработки web-приложенийKirill Klimov
 
Ключ успеха – процесс или продукт?
Ключ успеха – процесс или продукт?Ключ успеха – процесс или продукт?
Ключ успеха – процесс или продукт?Magecom Ukraine
 
Применение TDD при разработке веб-сервисов
Применение TDD при разработке веб-сервисовПрименение TDD при разработке веб-сервисов
Применение TDD при разработке веб-сервисовMagecom Ukraine
 
NoSQL и Zend Framework (Ростислав Михайлив)
NoSQL и Zend Framework (Ростислав Михайлив)NoSQL и Zend Framework (Ростислав Михайлив)
NoSQL и Zend Framework (Ростислав Михайлив)zfconfua
 

Viewers also liked (15)

Управление продуктом в стиле Magento Unified Process
Управление продуктом в стиле Magento Unified ProcessУправление продуктом в стиле Magento Unified Process
Управление продуктом в стиле Magento Unified Process
 
Применение компонент-ориентированной архитектуры для написания Magento Extens...
Применение компонент-ориентированной архитектуры для написания Magento Extens...Применение компонент-ориентированной архитектуры для написания Magento Extens...
Применение компонент-ориентированной архитектуры для написания Magento Extens...
 
Doctrine 2
Doctrine 2Doctrine 2
Doctrine 2
 
Эволюция ZF: архитектура, шаблоны, рефакторинг
Эволюция ZF: архитектура, шаблоны, рефакторингЭволюция ZF: архитектура, шаблоны, рефакторинг
Эволюция ZF: архитектура, шаблоны, рефакторинг
 
Встречайте Zend Framework 2.0
Встречайте Zend Framework 2.0Встречайте Zend Framework 2.0
Встречайте Zend Framework 2.0
 
Мобильные клиенты интернет-магазинов
Мобильные клиенты интернет-магазиновМобильные клиенты интернет-магазинов
Мобильные клиенты интернет-магазинов
 
Преимущества использования полнотекстового поиска в интернет-магазинах
Преимущества использования полнотекстового поиска в интернет-магазинахПреимущества использования полнотекстового поиска в интернет-магазинах
Преимущества использования полнотекстового поиска в интернет-магазинах
 
Реализация шаблонов корпоративных приложений в Magento
Реализация шаблонов корпоративных приложений в MagentoРеализация шаблонов корпоративных приложений в Magento
Реализация шаблонов корпоративных приложений в Magento
 
NoSQL и Zend Framework (Никита Грошин)
NoSQL и Zend Framework (Никита Грошин)NoSQL и Zend Framework (Никита Грошин)
NoSQL и Zend Framework (Никита Грошин)
 
Юнит тестирование в Zend Framework 2.0
Юнит тестирование в Zend Framework 2.0Юнит тестирование в Zend Framework 2.0
Юнит тестирование в Zend Framework 2.0
 
Хранение, обработка и отдача статики с использованием \Zend\File. Опыт социал...
Хранение, обработка и отдача статики с использованием \Zend\File. Опыт социал...Хранение, обработка и отдача статики с использованием \Zend\File. Опыт социал...
Хранение, обработка и отдача статики с использованием \Zend\File. Опыт социал...
 
Применение Scrum и Kanban для разработки web-приложений
Применение Scrum и Kanban для разработки web-приложенийПрименение Scrum и Kanban для разработки web-приложений
Применение Scrum и Kanban для разработки web-приложений
 
Ключ успеха – процесс или продукт?
Ключ успеха – процесс или продукт?Ключ успеха – процесс или продукт?
Ключ успеха – процесс или продукт?
 
Применение TDD при разработке веб-сервисов
Применение TDD при разработке веб-сервисовПрименение TDD при разработке веб-сервисов
Применение TDD при разработке веб-сервисов
 
NoSQL и Zend Framework (Ростислав Михайлив)
NoSQL и Zend Framework (Ростислав Михайлив)NoSQL и Zend Framework (Ростислав Михайлив)
NoSQL и Zend Framework (Ростислав Михайлив)
 

Similar to 1000 миллисекунд из жизни Magento

Тестируй это / Виктор Русакович (GP Solutions)
Тестируй это / Виктор Русакович (GP Solutions)Тестируй это / Виктор Русакович (GP Solutions)
Тестируй это / Виктор Русакович (GP Solutions)Ontico
 
Enterprise flex pure mvc, slides, russian
Enterprise flex pure mvc, slides, russianEnterprise flex pure mvc, slides, russian
Enterprise flex pure mvc, slides, russianSergiy Shychynov
 
Интуит. Разработка приложений для iOS. Лекция 7. Работа с сетью
Интуит. Разработка приложений для iOS. Лекция 7. Работа с сетьюИнтуит. Разработка приложений для iOS. Лекция 7. Работа с сетью
Интуит. Разработка приложений для iOS. Лекция 7. Работа с сетьюГлеб Тарасов
 
API backend за несколько минут
API backend за несколько минутAPI backend за несколько минут
API backend за несколько минутAnton Maksimov
 
Magento - Антон Капля
Magento - Антон КапляMagento - Антон Капля
Magento - Антон Капляmeet_magento
 
Monitoring and Load testing
Monitoring and Load testingMonitoring and Load testing
Monitoring and Load testingFedor Malyshkin
 
C# Web. Занятие 11.
C# Web. Занятие 11.C# Web. Занятие 11.
C# Web. Занятие 11.Igor Shkulipa
 
Илья Евлампиев - Нагрузочное тестирование веб-приложений с помощью The Grinder
Илья Евлампиев - Нагрузочное тестирование веб-приложений с помощью The GrinderИлья Евлампиев - Нагрузочное тестирование веб-приложений с помощью The Grinder
Илья Евлампиев - Нагрузочное тестирование веб-приложений с помощью The GrinderSQALab
 
развертывание среды Rails (антон веснин, Locum Ru)
развертывание среды Rails (антон веснин, Locum Ru)развертывание среды Rails (антон веснин, Locum Ru)
развертывание среды Rails (антон веснин, Locum Ru)guest40e031
 
антон веснин Rails Application Servers
антон веснин Rails Application Serversантон веснин Rails Application Servers
антон веснин Rails Application Serversrit2010
 
Jbreak 2016: Твой личный Spring Boot Starter
Jbreak 2016: Твой личный Spring Boot StarterJbreak 2016: Твой личный Spring Boot Starter
Jbreak 2016: Твой личный Spring Boot StarterAleksandr Tarasov
 
Cоздание приложений со знанием Perl
Cоздание приложений со знанием PerlCоздание приложений со знанием Perl
Cоздание приложений со знанием PerlAnatoly Sharifulin
 
Центр автоматизации SMS на базе мобильных VoIP-шлюзов Yeastar серии TG
Центр автоматизации SMS на базе мобильных VoIP-шлюзов Yeastar серии TGЦентр автоматизации SMS на базе мобильных VoIP-шлюзов Yeastar серии TG
Центр автоматизации SMS на базе мобильных VoIP-шлюзов Yeastar серии TGOleg Levitskiy
 
платформа научных симуляторов Gpu digital lab
платформа научных симуляторов Gpu digital labплатформа научных симуляторов Gpu digital lab
платформа научных симуляторов Gpu digital labOleg Gubanov
 
The Old New ASP.NET
The Old New ASP.NETThe Old New ASP.NET
The Old New ASP.NETVitaly Baum
 
Frontend весна 2014 лекция 1
Frontend весна 2014 лекция 1Frontend весна 2014 лекция 1
Frontend весна 2014 лекция 1Technopark
 

Similar to 1000 миллисекунд из жизни Magento (20)

Тестируй это / Виктор Русакович (GP Solutions)
Тестируй это / Виктор Русакович (GP Solutions)Тестируй это / Виктор Русакович (GP Solutions)
Тестируй это / Виктор Русакович (GP Solutions)
 
Enterprise flex pure mvc, slides, russian
Enterprise flex pure mvc, slides, russianEnterprise flex pure mvc, slides, russian
Enterprise flex pure mvc, slides, russian
 
Интуит. Разработка приложений для iOS. Лекция 7. Работа с сетью
Интуит. Разработка приложений для iOS. Лекция 7. Работа с сетьюИнтуит. Разработка приложений для iOS. Лекция 7. Работа с сетью
Интуит. Разработка приложений для iOS. Лекция 7. Работа с сетью
 
API backend за несколько минут
API backend за несколько минутAPI backend за несколько минут
API backend за несколько минут
 
Сервлеты
СервлетыСервлеты
Сервлеты
 
Magento - Антон Капля
Magento - Антон КапляMagento - Антон Капля
Magento - Антон Капля
 
Monitoring and Load testing
Monitoring and Load testingMonitoring and Load testing
Monitoring and Load testing
 
C# Web. Занятие 11.
C# Web. Занятие 11.C# Web. Занятие 11.
C# Web. Занятие 11.
 
Илья Евлампиев - Нагрузочное тестирование веб-приложений с помощью The Grinder
Илья Евлампиев - Нагрузочное тестирование веб-приложений с помощью The GrinderИлья Евлампиев - Нагрузочное тестирование веб-приложений с помощью The Grinder
Илья Евлампиев - Нагрузочное тестирование веб-приложений с помощью The Grinder
 
развертывание среды Rails (антон веснин, Locum Ru)
развертывание среды Rails (антон веснин, Locum Ru)развертывание среды Rails (антон веснин, Locum Ru)
развертывание среды Rails (антон веснин, Locum Ru)
 
антон веснин Rails Application Servers
антон веснин Rails Application Serversантон веснин Rails Application Servers
антон веснин Rails Application Servers
 
Jbreak 2016: Твой личный Spring Boot Starter
Jbreak 2016: Твой личный Spring Boot StarterJbreak 2016: Твой личный Spring Boot Starter
Jbreak 2016: Твой личный Spring Boot Starter
 
Cоздание приложений со знанием Perl
Cоздание приложений со знанием PerlCоздание приложений со знанием Perl
Cоздание приложений со знанием Perl
 
Service workers
Service workersService workers
Service workers
 
Центр автоматизации SMS на базе мобильных VoIP-шлюзов Yeastar серии TG
Центр автоматизации SMS на базе мобильных VoIP-шлюзов Yeastar серии TGЦентр автоматизации SMS на базе мобильных VoIP-шлюзов Yeastar серии TG
Центр автоматизации SMS на базе мобильных VoIP-шлюзов Yeastar серии TG
 
платформа научных симуляторов Gpu digital lab
платформа научных симуляторов Gpu digital labплатформа научных симуляторов Gpu digital lab
платформа научных симуляторов Gpu digital lab
 
The Old New ASP.NET
The Old New ASP.NETThe Old New ASP.NET
The Old New ASP.NET
 
Frontend весна 2014 лекция 1
Frontend весна 2014 лекция 1Frontend весна 2014 лекция 1
Frontend весна 2014 лекция 1
 
Zend Framework и Doctrine
Zend Framework и DoctrineZend Framework и Doctrine
Zend Framework и Doctrine
 
servlets1.pdf
servlets1.pdfservlets1.pdf
servlets1.pdf
 

More from Magecom Ukraine

10 000 вёдер или в погоне за Ключом от всех дверей
10 000 вёдер или в погоне за Ключом от всех дверей10 000 вёдер или в погоне за Ключом от всех дверей
10 000 вёдер или в погоне за Ключом от всех дверейMagecom Ukraine
 
Flexibility vs Conformity - lessons learned in Open Source
Flexibility vs Conformity - lessons learned in Open SourceFlexibility vs Conformity - lessons learned in Open Source
Flexibility vs Conformity - lessons learned in Open SourceMagecom Ukraine
 
Современные платформы (фреймворки) разработки веб- приложений на PHP
Современные платформы (фреймворки) разработки веб- приложений на PHP Современные платформы (фреймворки) разработки веб- приложений на PHP
Современные платформы (фреймворки) разработки веб- приложений на PHP Magecom Ukraine
 
Деплоймент и распространение обновлений для веб-приложений
Деплоймент и распространение обновлений для веб-приложенийДеплоймент и распространение обновлений для веб-приложений
Деплоймент и распространение обновлений для веб-приложенийMagecom Ukraine
 
Расширение функциональности модульного MVC приложения
Расширение функциональности модульного MVC приложенияРасширение функциональности модульного MVC приложения
Расширение функциональности модульного MVC приложенияMagecom Ukraine
 
Тестирование Magento с использованием Selenium
Тестирование Magento с использованием SeleniumТестирование Magento с использованием Selenium
Тестирование Magento с использованием SeleniumMagecom Ukraine
 
Архитектура веб-приложений на примере Zend Framework и Magento
Архитектура веб-приложений  на примере Zend Framework и MagentoАрхитектура веб-приложений  на примере Zend Framework и Magento
Архитектура веб-приложений на примере Zend Framework и MagentoMagecom Ukraine
 
Extension Marketplace. Площадки для распространения ПО
Extension Marketplace. Площадки для распространения ПОExtension Marketplace. Площадки для распространения ПО
Extension Marketplace. Площадки для распространения ПОMagecom Ukraine
 
Стандарты и соглашения в сложных ООП-приложениях
Стандарты и соглашения в сложных ООП-приложенияхСтандарты и соглашения в сложных ООП-приложениях
Стандарты и соглашения в сложных ООП-приложенияхMagecom Ukraine
 

More from Magecom Ukraine (9)

10 000 вёдер или в погоне за Ключом от всех дверей
10 000 вёдер или в погоне за Ключом от всех дверей10 000 вёдер или в погоне за Ключом от всех дверей
10 000 вёдер или в погоне за Ключом от всех дверей
 
Flexibility vs Conformity - lessons learned in Open Source
Flexibility vs Conformity - lessons learned in Open SourceFlexibility vs Conformity - lessons learned in Open Source
Flexibility vs Conformity - lessons learned in Open Source
 
Современные платформы (фреймворки) разработки веб- приложений на PHP
Современные платформы (фреймворки) разработки веб- приложений на PHP Современные платформы (фреймворки) разработки веб- приложений на PHP
Современные платформы (фреймворки) разработки веб- приложений на PHP
 
Деплоймент и распространение обновлений для веб-приложений
Деплоймент и распространение обновлений для веб-приложенийДеплоймент и распространение обновлений для веб-приложений
Деплоймент и распространение обновлений для веб-приложений
 
Расширение функциональности модульного MVC приложения
Расширение функциональности модульного MVC приложенияРасширение функциональности модульного MVC приложения
Расширение функциональности модульного MVC приложения
 
Тестирование Magento с использованием Selenium
Тестирование Magento с использованием SeleniumТестирование Magento с использованием Selenium
Тестирование Magento с использованием Selenium
 
Архитектура веб-приложений на примере Zend Framework и Magento
Архитектура веб-приложений  на примере Zend Framework и MagentoАрхитектура веб-приложений  на примере Zend Framework и Magento
Архитектура веб-приложений на примере Zend Framework и Magento
 
Extension Marketplace. Площадки для распространения ПО
Extension Marketplace. Площадки для распространения ПОExtension Marketplace. Площадки для распространения ПО
Extension Marketplace. Площадки для распространения ПО
 
Стандарты и соглашения в сложных ООП-приложениях
Стандарты и соглашения в сложных ООП-приложенияхСтандарты и соглашения в сложных ООП-приложениях
Стандарты и соглашения в сложных ООП-приложениях
 

1000 миллисекунд из жизни Magento

  • 1.
  • 2. 1000 миллисекунд из жизни Magento Евгений Ивашин, разработчик Magento Core
  • 3. Представьте себя на месте Magento Представьте себе что вас зовут Magento, вы весите около 60 мегабайт и состоите из более чем 320 тысяч строк кода.
  • 4. Представьте себя на месте Magento Представьте, что одни ваши знакомые хотят, чтобы вы весили меньше, другие – чтобы вы бегали как спринтер, третьи – чтобы вы были способны сделать сальто и встать на мостик без усилий.
  • 5. Представьте себя на месте Magento Представьте, что окружающие никогда не довольны вашими успехами, нагружают вас дополнительными упражнениями и в то же время не прекращают требовать от вас быть еще гибче и еще быстрее.
  • 6. Представьте себя на месте Magento Представили? А теперь представьте, что вы должны быть готовы: обслуживать тысячи клиентов в час никому не отказывать в помощи никого не заставлять ждать
  • 7. Тук-тук (0.000 ms) Пользователь набрал в браузере http://my.magento.installation.com/customer/account/login Веб-сервер все запросы переадресовывает на index.php
  • 8. Запуск основного цикла Magento (0.005 ms) Пользователь набрал в браузере http://my.magento.installation.com/customer/account/login Веб-сервер все запросы переадресовывает на index.php Mage::run()
  • 9. Экскурсия по фабрике ::getModel() ::app() ::getConfig() ::register() ::getBaseUrl() ::getSingleton() ::getStoreConfig() ::getBaseDir() ::registry() ::helper() ::getUrl() ::getResourceModel()
  • 10. Инициализация приложения (0.020 ms) Пользователь набрал в браузере http://my.magento.installation.com/customer/account/login Веб-сервер все запросы переадресовывает на index.php Mage::run() Инициализация класса приложения Mage_Core_Model_App
  • 11. Запуск основного цикла приложения (0.038 ms) ... Mage::run() Инициализация класса приложения Mage_Core_Model_App Запускается основной цикл приложения Mage::app()->run()
  • 12. Загрузка базовой конфигурации (0.123 ms) ... Mage::run() Инициализация класса приложения Mage_Core_Model_App Запускается основной цикл приложения Mage::app()->run() Загрузка базовой конфигурации из app/etc
  • 13. Загрузка базовой конфигурации 1 app/etc/*.xml System Configuration
  • 14. Инициализация модулей (0.175 ms) ... Инициализация класса приложения Mage_Core_Model_App Запускается основной цикл приложения Mage::app()->run() Загрузка базовой конфигурации из app/etc Инициализация каждого модуля из app/etc/modules ... Module 1 Module 2 Module 3 Module N
  • 15. Инициализация модулей 1 2 app/etc/*.xml app/etc/modules/*.xml app/<Module 1 path>/etc/*.xml app/<Module 2 path>/etc/*.xml app/<Module N path>/etc/*.xml app/etc/local.xml System Configuration 3 … N+1 4 N
  • 16. Запуск цикла диспетчеризации (0.591 ms) ... Запускается основной цикл приложения Mage::app()->run() Загрузка базовой конфигурации из app/etc Инициализация каждого модуля из app/etc/modules ... Module 1 Module 2 Module 3 Module N Инциализация Front Controller и запуск его цикла диспетчеризации
  • 17. Попытка сопоставить роутер с URL (0.613 ms) ... Инициализация каждого модуля из app/etc/modules ... Module 1 Module 2 Module 3 Module N Инциализация Front Controller и запуск его цикла диспетчеризации Перебор всех сконфигурированных роутеров ... Router 1 Router 2 Router 3 Router N
  • 18. Вычисление и запуск action (0.620 ms) ... Инциализация Front Controller и запуск его цикла диспетчеризации Перебор всех сконфигурированных роутеров ... Router 1 Router 2 Router 3 Router N Вычисление Action Controllerи Action, запуск $actionController->actionAction()
  • 19. Анатомия контроллера Обработка входных параметров из Request Загрузка Layout $this->loadLayout(); Работа с отдельными блоками в Layout Отрисовка Layout $this->renderLayout();