«Рамблер Касса» как пример высокопроизводительного проекта на .Net

Содержание

Слайд 2

И другие…

И другие…

Слайд 6

Highscalability.com

Highscalability.com

Слайд 7

Highscalability.com

Highscalability.com

Слайд 10

Нефункциональные требования

Uptime – 99.98
15 млн page view/day:
Кнопка «пустая»: 85% за 50мс
Кнопка отобразившийся:

Нефункциональные требования Uptime – 99.98 15 млн page view/day: Кнопка «пустая»: 85%
85% 70мс
Страница расписания фильма: 85% 150мс
Страница расписания кинотеатра: 85% 150мс
Страница плана зала:  85% 200мс

Слайд 11

Логическая архитектура

Логическая архитектура

Слайд 12

IIS

Отказоустойчивость:
NLB – ок, но распределение по серверам может быть только на

IIS Отказоустойчивость: NLB – ок, но распределение по серверам может быть только
уровне TCP/IP
ARR – NLB HTTP Layer , может балансировать, по HTTP заголовкам, сам нуждается в балансировке.
Недостатки
App Server и кеш сервер в одном флаконе.

Слайд 16

MS SQL Server

Масштабирование и отказоустойчивость:
Failover cluster
Mirroring
Replication
Sharding

MS SQL Server Масштабирование и отказоустойчивость: Failover cluster Mirroring Replication Sharding

Слайд 18

Cache

IIS caching
AppFabric Cache
Две основных проблемы в IT: инвалидация кеша и именование переменных.
Локальный

Cache IIS caching AppFabric Cache Две основных проблемы в IT: инвалидация кеша
кеш
Группы и теги
Особенности
Отказоустойчивый Кластер – нужен Enterprise
Использовать конфигурацию хранящуюся в SQL

Слайд 19

Queue

MSMSQ
Схема работы
Тонкие настройки
Пропускная способность
DB MQ
Персистентная, работает по принципу заказа, есть состояния.
Реляционная
1.2

Queue MSMSQ Схема работы Тонкие настройки Пропускная способность DB MQ Персистентная, работает
Kop/s

Слайд 20

Background workers

Проблема: нет нормального App server’a
WCF + Task Scheduler?
Windows Service +

Background workers Проблема: нет нормального App server’a WCF + Task Scheduler? Windows
Timer?
Разработали свой Task Server.

Слайд 23

NAS

Нужно хранилище для
статического контента
конфигураций IIS
Бекапов
Решение
MS Distributed File System
Replication

NAS Нужно хранилище для статического контента конфигураций IIS Бекапов Решение MS Distributed File System Replication

Слайд 24

Logging + Statistics

Нужен механизм для асинхронного способа записи служебной информации.
Нужен механизм для

Logging + Statistics Нужен механизм для асинхронного способа записи служебной информации. Нужен
сбора и анализа статистики.
Результат:
MSMQ + Task server + Sql Server + SQL Reporting Services

Слайд 25

Monitoring

WhatsUp Gold
Недорогое решение
Для стандартных задач подходит хорошо
Неудобное в администрировании
Мониторинг Бизнес-показателей сложно

Monitoring WhatsUp Gold Недорогое решение Для стандартных задач подходит хорошо Неудобное в
реализеум
Web Services + Remstats
Используется для мониторинга Бизнес-показателей
SCOM

Слайд 26

И все-таки почему .net?

Опыт разработки:
Afisha.ru
Eda.ru
Mir.travel
Нам он нравится ☺

И все-таки почему .net? Опыт разработки: Afisha.ru Eda.ru Mir.travel Нам он нравится ☺

Слайд 27

Результат

2000 rps на app server (IIS)
Горизонтально масштабируется линейно до 10 000 rps

Результат 2000 rps на app server (IIS) Горизонтально масштабируется линейно до 10 000 rps

Имя файла: «Рамблер-Касса»-как-пример-высокопроизводительного-проекта-на-.Net.pptx
Количество просмотров: 106
Количество скачиваний: 0