Быстрое развертывание шаблонов и статики в Mail.Ru Кондратов Николай Технический руководитель почтовой службы
Содержание
- 2. HighLoad++ 2010 О чем мы? система шаблонов организация работы верстальщиков процесс разработки и тестирования тестовая среда
- 3. HighLoad++ 2010 Хорошая система работы со статикой: удобство и скорость в работе версионность и бэкап параллельная
- 4. HighLoad++ 2010 Система шаблонов HTML-текст с командами управления переменные, функции, инклуды, условия, etc. на фронтендах –
- 5. HighLoad++ 2010 Как это было: CVS Схема репозитория mail.ru/ mail/ templates/ images/ js/ css/ my/ photo/
- 6. HighLoad++ 2010 Как это было: работа верстальщика сцепление версий Проблемы одна ветка в CVS теги для
- 7. HighLoad++ 2010 Как это было: работа верстальщика долгое внесение изменений «мусорные» коммиты Проблемы любая раскладка –
- 8. HighLoad++ 2010 Как это было: раскладка CVS deploy upload Фронтенды (Почта, Мир, etc.) БД Мониторинг верстальщик
- 9. HighLoad++ 2010 Как это было: минусы долгий процесс разработки шаблоны всех проектов на всех фронтендах долгое
- 10. HighLoad++ 2010 Как это было: минусы CVS размер репозитория – 2,8 Гб, 55 тыс. файлов медленный
- 11. HighLoad++ 2010 Что сделали перевод репозитория CVS ? git разделение репозиториев использование веток реорганизация тестового окружения
- 12. HighLoad++ 2010 Переход на git – разделение репозиториев разделили репозитории (статика и шаблоны) git с шаблонами
- 13. HighLoad++ 2010 Переход на git – разделение на ветки разделили на ветки: master prerelease ветки разработки
- 14. HighLoad++ 2010 Переход на git - хуки hooks: проверка синтаксиса шаблонов обработка шаблонов автоматическая раскладка etc.
- 15. HighLoad++ 2010 Процесс разработки создаем ветку на основе master вносим изменения коммитим, тестируем переносим изменения из
- 16. HighLoad++ 2010 Общая схема (потоки данных)
- 17. HighLoad++ 2010 Общая схема (действия) hook http http samba ssh scp scp
- 18. HighLoad++ 2010 Тестовые серверы DOCUMENT_ROOT сервера – директория с шаблонами dev.mail.ru – master branch-1.dev.mail.ru – ветка
- 19. HighLoad++ 2010 FUSE (Filesystem on Userspace) храним только отличающиеся файлы отключаем компиляцию шаблонов недостающие файлы в
- 20. HighLoad++ 2010 mail.ru/ master 1.htm 2.htm deploy/ branch-1/ branch-1 2.htm (измененный файл) mail.ru.deploy/ mail.ru.branch-1/ (DOCUMENT_ROOT для
- 21. HighLoad++ 2010 mail.ru/ master 1.htm 2.htm deploy/ branch-1/ branch-1 2.htm (измененный файл) mail.ru.deploy/ mail.ru.branch-1/ (DOCUMENT_ROOT для
- 22. HighLoad++ 2010 mail.ru/ master 1.htm 2.htm deploy/ branch-1/ branch-1 2.htm (измененный файл) mail.ru.deploy/ mail.ru.branch-1/ (DOCUMENT_ROOT для
- 23. HighLoad++ 2010 git + windows длинная цепочка действий для раскладки принцип «сохранил – увидел» решение –
- 24. HighLoad++ 2010 Процесс: клонирование репозитория в /home/vasya редактирование через Samba проверка на vasya.dev.mail.ru новая ветка (на
- 25. HighLoad++ 2010 Раскладчик модульность проверка шаблонов различная обработка разных типов файлов компиляция шаблонов ищем diff зависимости
- 26. HighLoad++ 2010 Раскладчик – вкусности условная обработка файла в зависимости от меток в нем JS сборка
- 27. HighLoad++ 2010 Раскладчик – пример метки метка в первой строке файла JS // @build // @build-minify
- 28. HighLoad++ 2010 Мониторинг раскладки инкрементный номер каждой раскладки в БД – позиция на каждом сервере мониторим
- 29. HighLoad++ 2010 Результаты упростили жизнь верстальщикам возможность параллельной разработки фич ускорение отладки и тестирования улучшение работы
- 30. HighLoad++ 2010 Но есть проблема… узкое место – получение архивов с шаблонами из одного источника upload
- 31. HighLoad++ 2010 Простое решение… шардинг увеличить количество отдающих серверов uploadN f1 f2 f(N-1) fN upload1 …………..
- 32. HighLoad++ 2010 Хорошее решение: peer-to-peer с upload-сервера отдача в режиме супер-сидирования фронтенды обмениваются между собой f1
- 34. Скачать презентацию






























Групповая психология. Лекция 6
Биологическое действие ионизирующих излучений
"Земля - наш общий дом"
Обособление несогласованных определений
Выделение у животных
Титрование
насекомые
Аутсорсинг hr-функций: необходимость и целесообразность.
Создание Единой нормативно-справочной информации по материально-техническим ресурсам в крупных компаниях. Актуальность, Шаги, Пр
Природные и синтетические красители и ароматизаторы
Музыкальные жанры
Prezentatsia_Tsifrovye_kompetentsii_pedagoga_puti_ikh_formirovania
Креативные машины и оснастка и входящей в её состав производственной фирмы Центролит
Взаимодействие людей в многонациональном обществе
Тревожность и агрессия как основные факторы аутоагрессивного поведения подростков: рекомендации педагогам
Понимание красоты человека в европейском и русском искусстве
Конструкции зданий и сооружений. Состав РГЗ
Презентация к уроку финансовой грамотности _Особые жизненной ситуации_ рождение ребенка, потеря кормильца_. 9 класс
Леонардо да Винчи (15 .04 .1452 – 02 .05. 1519 гг.)
Режимы резания
Приемы компрессии текста
Презентация на тему Гигиена человека
Automated Information Technologies
Проблемы информационной безопасности by-нета
IT инфраструктура предприятия
Проекты младших школьников
FOK
Жостовская роспись