Wargaming: тыл - фронту!

656 views
595 views

Published on

Максим Барышников "Wargaming: тыл - фронту!"

Чтобы игра стала успешной (а из успешной превратилась в легендарную), недостаточно самой игры, сколь бы хороша она ни была. Помимо всего прочего, действительно массовой игре нужна очень развитая веб-часть. О ней и пойдет речь.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
656
On SlideShare
0
From Embeds
0
Number of Embeds
20
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Wargaming: тыл - фронту!

  1. 1. WARGAMING: тыл — фронту! Максим Барышников Solutions Architect
  2. 2. Часть первая: организационная 2
  3. 3. 3 • Более 200 человек • 40+ проектов • Досье 60М игроков • 2М уникальных посетителей в день релиза только на worldoftanks.ru В цифрах
  4. 4. 4 Auth Service Game Data API WG Open ID BackOffice Rating System Public API Clans Vehicle Recovery Portal Support WarGAG Forums Wargaming.net ClanWars
  5. 5. 5 Много компонентов × N игр (WoT, WoWP, WoWS…) × M реалмов (RU, EU, NA, CN, ASIA…) = WARGAMING WEB
  6. 6. 6 • каждый компонент разрабатывается отдельно …вплоть до отдельной команды и менеджера • ввзаимодействует с другими компонентами через API или контракт • зависимости управляются также, как в любом пакетном менеджере Разработка компонентов
  7. 7. 7 Часть вторая: техническая
  8. 8. 8 Технологии
  9. 9. 9 AMQP Open ID RS AMQP HTTP API :: call() Clans HTTP API :: call() HTTP API :: call() HTTPHTTP Public API HTTP API :: call() HTTP API :: call() jabberd Backyard Взаимодействие компонентов Game API AMQP Portal Auth Service HTTP API :: call() HTTP API :: call() AMQP
  10. 10. 10 • AMQP и HTTP API — основные способы взаимодействия • Взаимодействие не всегда упорядочено • Есть случаи, когда один компонент читает из БД другого
  11. 11. 11 • 500+ Gb только данных игроков • 1500 логинов в секунду • 100+ боев заканчивается в секунду • 3000+ игровых событий в секунду
  12. 12. 12 Часть третья: технические планы
  13. 13. 13 AMQP Open ID RS AMQP HTTP API :: call() Clans HTTP API :: call() HTTP API :: call() HTTPHTTP Public API HTTP API :: call() HTTP API :: call() jabberd Backyard Взаимодействие компонентов Game API AMQP Portal Auth Service HTTP API :: call() HTTP API :: call() AMQP
  14. 14. 14 Event-Driven SOA Service Bus Event Bus Компонент pub/sub call() Компонент pub/sub call() Компонент pub/sub call() Компонент pub/sub call() Компонент pub/sub call() Компонент pub/sub call() call()pub/sub call()pub/sub call()pub/sub
  15. 15. 15 • RabbitMQ— messaging that just works • Гибкий: маршрутизация, federated exchanges, etc. • Multi-protocol: AMQP, MQTT, STOMP… • Хорошие клиентские библиотеки • Плагины
  16. 16. 16 • Kafka — распределенный коммит-лог • Надежный: пишем сразу на диск и реплицируем • Быстрый: сотни мегабайт RW/sec • Масштабируемый: репликация и партиционирование
  17. 17. Эпилог: Q&A Барышников Максим Solutions Architect
  18. 18. Developer Partner Program • Документация • Поддержка • Примеры • API Explorer • … https://ru.wargaming.net/developers/

×