Как улучшить производительность проекта за три шага Шаромов Денис руководитель отдела техподдержки.

Презентация:



Advertisements
Похожие презентации
Экспертиза производительности Типовые ошибки разработчиков Шаромов Денис руководитель отдела техподдержки «1С-Битрикс»
Advertisements

Рекомендации по работе со службой технической поддержки Шаромов Денис руководитель отдела техподдержки.
Интернет-магазины, высокие нагрузки, синхронизации бизнес- приложений с веб-системой Александр Сербул Руководитель направления контроля качества интеграции.
Автоматический бэкап в облако 1С- Битрикс Шаромов Денис руководитель отдела техподдержки.
Что клиенты просят доделать после партнеров Евгений Потапов ITSumma.
Технологические обновления в 2009 году: Bitrix Framework 8.6 Вадим Думбравану Руководитель проектов.
Техподдержка от релиза до релиза Шаромов Денис руководитель отдела техподдержки.
D7 – новая платформа разработки сайтов и порталов Тушинский Юрий Технический директор Битрикс.
Интеграция 1С-Битрикс: Корпоративный портал с 1С: Предприятие Артем Рябинков ведущий аналитик компании «1С-Битрикс» +
Подводные камни разработки – чего делать нельзя Александр Сербул Руководитель направления контроля качества интеграции и
Статичный сайт Если тысяча пользователей запросит такую страницу у сервера, то они получат тысячу абсолютно одинаковых копий html-файла. Сайт, устроенный.
Принципиальные изменения в версии 6.0. Оптимизация. Производительность продукта Сергей Рыжиков Генеральный директор ООО «1С-Битрикс»
Платформа разработки высоконагруженного веб-сервиса: инструменты отладки и возможности масштабирования Александр Демидов руководитель направления арендных.
Создание тест-плана jmeter – от расчета цепочек до нагрузочного кластера на 5-10 млн. хитов Сербул Александр Руководитель направления контроля качества.
Когда и целого сервера мало. Опыт перехода на облачный хостинг.
Поддержка кластерных решений и разделения модулей на разные базы данных Максим, Смирнов программист.
РАЗРАБОТКА ВЫСОКОНАГРУЖЕННЫХ WEB- ПРИЛОЖЕНИЙ inln.ru Кондратьев Денис.
Веб-кластер, планы по развитию, распределенный веб-кластер Максим Смирнов ведущий разработчик.
Поддержка пользовательских файловых хранилищ. Облачные хранилища. Максим Смирнов ведущий разработчик.
Аспекты увеличения быстродействия «1С-Битрикс: Управление сайтом» на виртуальном хостинге Артём Рябинков 1С-Битрикс.
Транксрипт:

Как улучшить производительность проекта за три шага Шаромов Денис руководитель отдела техподдержки

Основные положения Проблема должна быть обозначена (сайт падает, долго открывается страница и т.д.) Цель – измерима (предотвратить падения сайта, уменьшить время работы страницы с 1 сек. до 0.1 сек., разгрузить диск со 100% до 50%) Не должно быть оптимизации ради процесса (нельзя просто "что-то" сделать и "что-то" ускорить)

Перед началом работы Устранить явные ошибки конфигурации Монитор производительности: Настройки PHP Монитор производительности: Сервер БД

Шаг 0: отладка шаблона Создать «нулевую страницу» и убедиться, что в шаблоне сайта все компоненты закешированы, нет лишних запросов и долгих операций

Методика работы Шаг 1 находим раздел или страницу, которые создают проблему Шаг 2 выясняем, что является проблемой: компонент, sql, код Шаг 3 устраняем проблему

Шаг первый: Где? Если проблема наблюдается стабильно Включаем режим отладки

Шаг первый: Где? Если проблема наблюдается стабильно Смотрим статистику по нагрузке страниц

Шаг первый: Где? Если нет возможности включить монитор

Шаг первый: Где? Если нет возможности включить монитор Фиксировать время работы страницы в текстовый файл Производительность сайта в картинках Производительность сайта в картинках Включить регистрацию времени исполнения страниц в лог Apache (параметр %T) Подключить модуль xhprof для php Отладка сложных веб-приложений Отладка сложных веб-приложений

Шаг второй: Что? Ответом будет компонент, SQL запрос или фрагмент кода

Шаг второй: Что? Переходим в режим отладки

Шаг второй: Что? Анализируем время исполнения страницы

Шаг третий: Что делать? Проверить, включен ли кеш Оптимизировать таблицы базы данных Пробовать перевести таблицы в InnoDB и наоборот через монитор производительности Создать индексы через монитор производительности Проверить компонент: считать число элементов, учитывать права доступа, дату активности Перенести свойства инфоблока в отдельные таблицы и наоборот

Шаг третий: Что делать? Использовать в фильтрах ID свойств вместо символьного кода Сократить число фильтруемых свойств Избегать выборки большого числа данных с сортировкой Все долгие операции (импорт/экспорт, работа с внешними сервисами по http) выносить на агенты и выполнять на cron EXPLAIN и профайлер MySQL Xdebug (трассировка и профайлинг), xhprof

Алгоритм работы Шаг 1 Шаг 2 Шаг 3 Цель достигнута? нет конец да начало

Спасибо за внимание! Вопросы? Шаромов Денис Skype: denis_call