Разработка многопользовательских онлайн игр. Архитектура Dozory.ru и Chernovik-online.ru Лекция 3.

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



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

Как быстро сделать интернет- магазин на ASP.NET Камиль Компания AdVantShop.NET.
С чего начать свой бизнес онлайн? От идеи до прибыли Алексей Егошин Генеральный директор ООО Компания «Цитрус» Формула сайта: Эффективный интернет-магазин.
ВЫБОР РАЗРАБОТЧИКА ОСОБЕННОСТИ ПРОЕКТИРОВАНИЯ ТИПОВЫЕ ОШИБКИ В РАЗРАБОТКЕ Вредные советы ДОКЛАДЧИК «СОВЕТЧИК» АЛЕКСЕЙ АКИМОВ.
Архитектура новой почты Рамблера Андрей Шетухин. Rambler Mail сегодня 240 тысяч новых регистраций в день 66 миллионов пользователей 20 миллионов живых.
Артем Рябинков руководитель отдела развития бизнеса, к.т.н. Битрикс24 От сайта до комплексного управления компанией.
Распределенная Архитектура LAMP приложений Петр Зайцев Директор, Percona Ltd.
Троицкий Д.И. Интернет-технологии1 ДИНАМИЧЕСКИЕ WEB-СТРАНИЦЫ СЕРВЕРНЫЕ СЦЕНАРИИ Лекция 9 Кафедра «Автоматизированные станочные системы» Dept. of Automated.
1 1С-Битрикс: Корпоративный портал Внедрение, обучение, сопровождение. 1 «Стоимость владения» корпоративным порталом Выбор.
Опыт реализации отказоустойчивого сервера приложений и хранилища данных на базе СУБД ЛИНТЕР Михаил Ермаков, Дмитрий Мухоедов, РЕЛЭКС.
Организация распределенных прикладных систем. Попытаемся ответить на вопросы Как устроены распределенные прикладные системы? Каковы наиболее важные их.
Артем Рябинков руководитель отдела развития бизнеса, к.т.н. Битрикс24 От сайта до комплексного управления компанией.
Маркин Алексей Технический директор Битрикс-направления ADV / web-engineering co. Битрикс как промышленная интернет-платформа.
Практика разработки Web 2.0 портала с социальными сервисами Дмитрий Калинников Александр Макарчук.
1/20 Опыт использования ОПО для крупных промышленных предприятий. Распределенные кластеры, виртуализация, решение на основе «тонкого клиента». Еремин Дмитрий.
Что такое корпоративный портал и почему он нужен Вашей компании? Богомолов Максим Генеральный директор ООО «2Б-Дизайн»
Когда и целого сервера мало. Опыт перехода на облачный хостинг.
Web-узел, как объект проектирования Web-сайт - комплекс инженерно- художественных решений Web-сайт - комплекс инженерно- художественных решений Главный.
Интернет-магазины, высокие нагрузки, синхронизации бизнес- приложений с веб-системой Александр Сербул Руководитель направления контроля качества интеграции.
PriceOnline «WEB-самообслуживание» для оптовых фирм.
Транксрипт:

Разработка многопользовательских онлайн игр. Архитектура Dozory.ru и Chernovik-online.ru Лекция 3

О чем эта лекция? Проект dozory.ru За два года 2.5 млн уникальных поситителей В среднем тысяч поситетелей в день Пиковые нагрузки – одновременно играющих пользователей Проект chernovik-online.ru – открытая бета Как они устроены изнутры? Программно и аппаратно

Что нужно от вас? Просите расшифровать непонятные термины Задавайте вопросы если хотите узнать больше по какой-то теме Критикуйте! Вместе можем придумать как улучшить архитектуру

О нас в прошедшем времени Несколько лет веб разработки Сайты, интернет магазины, CSM,.... Был опыт нагруженного проекта (целых два сервера на проект, вместо одного на десять) Активно изучаем новые технологии и любим их применять, особенно в новых проектах

Дозоры. Как придумали и как все начиналось Всей компании хотелось поработать над своим проектом Идея родилась в многочисленных обсуждениях, выбирали между банерной сетью и игрой Пробуем прототипы Первые трудности в коммуникациях

Выбор архитектуры Сервер на С Или CGI на perl

Выбираем CGI Мы знали как работают web проекты Вообще не представляли специфику игр Количество perl разработчиков больше Прототипы были на том же perl

Как устроена первая версия? mod_perl Не оптимизированный MySQL Есть зачатки кеширования

Как устроено само приложение? Модель Представление Контроллер

Альфа тест. Запуск первой версии 3 месяца активной разработки Внутренний тест – 10 человек из офиса Запуск – падение через 3 минуты Поиск ошибок практически до утра После сна сразу несколько человек поняли в чем проблема :)

1е правило проектирования высокнагрузочных систем Если что-либо может чисто теоретически произойти – оно обязательно произойдет!

Что же было не так? Мы не сделали lock's на кеш

Игра и база даных 3я нормальная форма Как ускорить? Если можете не обращаться к БД – не обращайтесь (Петр Зайцев)

Механизмы кеширование Кеширование есть в самой БД Файлы Shared memory Memcached

Кеширование объектов Один объект содрежит в кеше всех потомков Каждый объект в кеше отдельной записью

онлайн. Что делать? Оптимизация MySQL, innodb Memcached Perscached и person_storer Memcached для локов критичных объектов

Как обеспечить устойчивость работы? 24/7 HA cluster (LVS) Апачи через ldirector Дублирование сайтов на двух машинах Дублирование базы данных Модули для бэкендов расшарены по nfs (drdb для синхронизации) Пишем с бэкэндов по fuse-ssh

Новые технологии Нас настиг Web 2.0 Ушли то фреймов XML+XSLT как замена представления

Финальная схема 16 физических серверов

Еще схема

Что изменилось после нас? Более мощные машины на бэкенды Nginx перед тяжелыми апачами Перевели некоторые расчеты на отдельные демоны Заменили XML+XSLT на json

Черновик Выбор технологий Выбор архитектуры

Схема работы

Технически все должно быть хорошо Так ли это – покажет время

25й кадр В отдел разработки игр мы ищем геймдизайнера!