Сервер приложений С++Андрей ШетухинRambler Internet Holding

Содержание

Слайд 2

Сервер приложений С++

первые наработки - 2003 год
нагруженный проект, много запросов, мало памяти,

Сервер приложений С++ первые наработки - 2003 год нагруженный проект, много запросов,
мало CPU
компьютеры выросли, но выросли и нагрузки; ничего не изменилось
новые требования: модульность, упрощение API, переносимость
необходимость поддержки инструментария Web-2.0 (AJAX, XML, JSON)

Слайд 3

Сервер приложений С++

что такое MVC и зачем оно нужно?
необходимые модификации
достоинства предложенной схемы
архитектура

Сервер приложений С++ что такое MVC и зачем оно нужно? необходимые модификации
CAS

Парадигма MVC

Слайд 4

Сервер приложений С++

Классическая архитектура MVC

Сервер приложений С++ Классическая архитектура MVC

Слайд 5

Сервер приложений С++

плохо работает под большой нагрузкой
сложность разработки моделей, контроллеров и представлений
ненужный

Сервер приложений С++ плохо работает под большой нагрузкой сложность разработки моделей, контроллеров
код в моделях
проблемы с масштабированием

Критика

Слайд 6

Сервер приложений С++

Модификация MVC (mMVC)

Сервер приложений С++ Модификация MVC (mMVC)

Слайд 7

Сервер приложений С++

модели – универсальные
формирование ответа – только в представлении
для генерации HTML/JSON/XML

Сервер приложений С++ модели – универсальные формирование ответа – только в представлении
кроме шаблона и View ничего не требуется
простота внесения правок
высокая скорость работы

Достоинства mMVC

Слайд 8

Сервер приложений С++

динамично развивается
проверен временем
текущая версия – 3.3.X
распространяется как Open Source продукт
лицензия

Сервер приложений С++ динамично развивается проверен временем текущая версия – 3.3.X распространяется
– BSD
широкий набор модулей для работы с СУБД, memcached, POP3/IMAP и т.п.

CAS сегодня

Слайд 9

Сервер приложений С++

модульность
взаимную изоляцию сущностей
интегрируемость с другими технологиями
универсальность кода
расширяемость
простоту сопровождения проекта
низкую стоимость

Сервер приложений С++ модульность взаимную изоляцию сущностей интегрируемость с другими технологиями универсальность
разработки

CAS обеспечивает

Слайд 10

Сервер приложений С++
клиентские: HTTP, XML-RPC, AJAX(XML, JSON)
серверные: Apache 1.3 и 2.X, FastCGI
пользовательские:

Сервер приложений С++ клиентские: HTTP, XML-RPC, AJAX(XML, JSON) серверные: Apache 1.3 и
API для создания собственных модулей и плагинов

Интерфейсы

Слайд 11

Сервер приложений С++

Архитектура CAS

Сервер приложений С++ Архитектура CAS

Слайд 12

Сервер приложений С++

загрузка конфигурации
загрузка модулей
создание сервера приложений
обработка запросов
выход

Жизненный цикл

Сервер приложений С++ загрузка конфигурации загрузка модулей создание сервера приложений обработка запросов выход Жизненный цикл

Слайд 13

Сервер приложений С++

контроллер исполняется первым
модели запускаются последовательно
если возникла ошибка – работают финализаторы
представление

Сервер приложений С++ контроллер исполняется первым модели запускаются последовательно если возникла ошибка
формирует данные

Обработка запроса

Слайд 14

Сервер приложений С++

необходимый инструментарий
пишем “Hello, World!”
тестируем результаты работы
пример посложнее – лента новостей
сравним

Сервер приложений С++ необходимый инструментарий пишем “Hello, World!” тестируем результаты работы пример
с mod_perl
и с PHP – тоже сравним

От слов – к делу!

Слайд 15

Сервер приложений С++

компилятор C++
система сборки cmake
сервер приложений C++
10 минут свободного времени

Инструменты

Сервер приложений С++ компилятор C++ система сборки cmake сервер приложений C++ 10 минут свободного времени Инструменты

Слайд 16

Сервер приложений С++

создаем модуль

Hello, World!

Сервер приложений С++ создаем модуль Hello, World!

Слайд 17

Сервер приложений С++

пишем код

Hello, World!

Сервер приложений С++ пишем код Hello, World!

Слайд 18

Сервер приложений С++

создаем шаблон

Hello, World!

Сервер приложений С++ создаем шаблон Hello, World!

Слайд 19

Сервер приложений С++

проверяем результат

Hello, World!

Сервер приложений С++ проверяем результат Hello, World!

Слайд 20

Сервер приложений С++

тоже саме – на Perl

Hello, World!

Сервер приложений С++ тоже саме – на Perl Hello, World!

Слайд 21

Сервер приложений С++

и на PHP

Hello, World!

Сервер приложений С++ и на PHP Hello, World!

Слайд 22

Сервер приложений С++

Лента новостей

Пример посложнее

Сервер приложений С++ Лента новостей Пример посложнее

Слайд 23

Сервер приложений С++

единые шаблоны для всего проекта, независимо от “движка”
простота миграции между

Сервер приложений С++ единые шаблоны для всего проекта, независимо от “движка” простота
технологиями
высокая скорость прототипирования и разработки
поддержка популярных языков и сред: Perl, PHP, Python

Интеграция

Слайд 24

Сервер приложений С++

Linux
FreeBSD
Solaris
i386
amd64
UltraSPARC

Платформы и архитектуры

Сервер приложений С++ Linux FreeBSD Solaris i386 amd64 UltraSPARC Платформы и архитектуры

Слайд 25

Сервер приложений С++

поддержка SOAP
Web Sockets
модули для работы с разнообразными поставщиками данных
поддержка вставок

Сервер приложений С++ поддержка SOAP Web Sockets модули для работы с разнообразными
кода на Lua, Python и PHP

Развитие проекта

Имя файла: Сервер-приложений-С++Андрей-ШетухинRambler-Internet-Holding.pptx
Количество просмотров: 143
Количество скачиваний: 0