Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 12 лет назад пользователемdigivillage.ru
1 Разработка многопользовательских онлайн игр. Архитектура Dozory.ru и Chernovik-online.ru Лекция 3
2 О чем эта лекция? Проект dozory.ru За два года 2.5 млн уникальных поситителей В среднем тысяч поситетелей в день Пиковые нагрузки – одновременно играющих пользователей Проект chernovik-online.ru – открытая бета Как они устроены изнутры? Программно и аппаратно
3 Что нужно от вас? Просите расшифровать непонятные термины Задавайте вопросы если хотите узнать больше по какой-то теме Критикуйте! Вместе можем придумать как улучшить архитектуру
4 О нас в прошедшем времени Несколько лет веб разработки Сайты, интернет магазины, CSM,.... Был опыт нагруженного проекта (целых два сервера на проект, вместо одного на десять) Активно изучаем новые технологии и любим их применять, особенно в новых проектах
5 Дозоры. Как придумали и как все начиналось Всей компании хотелось поработать над своим проектом Идея родилась в многочисленных обсуждениях, выбирали между банерной сетью и игрой Пробуем прототипы Первые трудности в коммуникациях
6 Выбор архитектуры Сервер на С Или CGI на perl
7 Выбираем CGI Мы знали как работают web проекты Вообще не представляли специфику игр Количество perl разработчиков больше Прототипы были на том же perl
8 Как устроена первая версия? mod_perl Не оптимизированный MySQL Есть зачатки кеширования
9 Как устроено само приложение? Модель Представление Контроллер
10 Альфа тест. Запуск первой версии 3 месяца активной разработки Внутренний тест – 10 человек из офиса Запуск – падение через 3 минуты Поиск ошибок практически до утра После сна сразу несколько человек поняли в чем проблема :)
11 1е правило проектирования высокнагрузочных систем Если что-либо может чисто теоретически произойти – оно обязательно произойдет!
12 Что же было не так? Мы не сделали lock's на кеш
13 Игра и база даных 3я нормальная форма Как ускорить? Если можете не обращаться к БД – не обращайтесь (Петр Зайцев)
14 Механизмы кеширование Кеширование есть в самой БД Файлы Shared memory Memcached
15 Кеширование объектов Один объект содрежит в кеше всех потомков Каждый объект в кеше отдельной записью
16 онлайн. Что делать? Оптимизация MySQL, innodb Memcached Perscached и person_storer Memcached для локов критичных объектов
17 Как обеспечить устойчивость работы? 24/7 HA cluster (LVS) Апачи через ldirector Дублирование сайтов на двух машинах Дублирование базы данных Модули для бэкендов расшарены по nfs (drdb для синхронизации) Пишем с бэкэндов по fuse-ssh
18 Новые технологии Нас настиг Web 2.0 Ушли то фреймов XML+XSLT как замена представления
19 Финальная схема 16 физических серверов
20 Еще схема
21 Что изменилось после нас? Более мощные машины на бэкенды Nginx перед тяжелыми апачами Перевели некоторые расчеты на отдельные демоны Заменили XML+XSLT на json
22 Черновик Выбор технологий Выбор архитектуры
23 Схема работы
24 Технически все должно быть хорошо Так ли это – покажет время
25 25й кадр В отдел разработки игр мы ищем геймдизайнера!
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.