Архитектура высокопроизводительных веб

advertisement
Архитектура высокопроизводительных
веб-приложений
Владимир Ковалевский 2008 г.
3 уровня разработки



Дизайн приложения
Кэширование
Хранилище данных
2
Архитектура высокопроизводительных веб-приложений. Владимир Ковалевский 2008 г.
Дизайн. Объектная модель.




Контент
Рубрикатор
Абстрактная группа
3 измерения.
3
Архитектура высокопроизводительных веб-приложений. Владимир Ковалевский 2008 г.
Дизайн. Политики безопасности.
Актуальность.
Роли.
Администрирование.
Фабрика политик.




4
Архитектура высокопроизводительных веб-приложений. Владимир Ковалевский 2008 г.
Дизайн. Монолит vs Сервисы
Монолит
Сервисы
Всё в одном месте
Распределённая разработка
Быстрая разработка модулей в рамках
одного проекта
Отказоустойчивость
Простое управление релизами
Неравномерное распределение
нагрузки
Равномерное распределение нагрузки
Интеграция с другими системами
Простое администрирование
Инкапсуляция
Единое хранилище данных
Распределённый хостинг
Менее требовательна к аппаратным
ресурсам
5
Архитектура высокопроизводительных веб-приложений. Владимир Ковалевский 2008 г.
Дизайн. Вывод
Единая объектная модель для всех частей системы.
Отказоустойчивость.
Администрирование приложения.
Возможность распределённой разработки.
Использование монолит и сервис в тандеме.





6
Архитектура высокопроизводительных веб-приложений. Владимир Ковалевский 2008 г.
Кэширование. Причины.
Распределение нагрузки.
Приближение данных к клиенту.
Отказоустойчивость.



7
Архитектура высокопроизводительных веб-приложений. Владимир Ковалевский 2008 г.
Кэширование. 1-ый уровень.
Кэш с вёрсткой.
Частичное кэширование.
Регулирование кэширования при помощи
интерфейсов.
Описание вёрстки хранится в формате XML.




8
Архитектура высокопроизводительных веб-приложений. Владимир Ковалевский 2008 г.
Кэширование. 2-ой уровень.
Кэш объектов.
Однородный кэш.
Внутренние и внешние идентификаторы объектов.
Разделение и безопасность пользовательского кеша.




9
Архитектура высокопроизводительных веб-приложений. Владимир Ковалевский 2008 г.
Кэширование. 3-ий уровень.



Кэш ключей.
Запрос – есть набор ключей.
Ключ есть внешний идентификатор объекта.
10
Архитектура высокопроизводительных веб-приложений. Владимир Ковалевский 2008 г.
Данные. Оптимизация.




Представления
Сервис статистики
Агрегирование данных
OR Mapping
11
Архитектура высокопроизводительных веб-приложений. Владимир Ковалевский 2008 г.
Download