Событийные машины Сетевая многозадачность: событийные машины Павел Кудинов HighLoad 2007.

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



Advertisements
Похожие презентации
HighLoad 2007 и веб-сервисы Высоконагруженные приложения как совокупность веб-сервисов Павел Кудинов.
Advertisements

REST XSLT Павел Кудинов Агентство «Точка Кипения» Технический директор RESTful проекты на XSLT в условиях неполной поддержки XSL.
Лекция 23 Лекция 23 Схемы распределения данных и запросов. Обработка распределенных данных и запросов. Многопотоковые и многосерверные архитектуры. Типы.
ПО Всемирной паутины Буканов Иван 8 «А». Определение WWW сетевая технология прикладного уровня стека TCP/IP, построенная на клиент-серверной архитектуре.
Распределенная обработка информации Разработано: Е.Г. Лаврушиной.
Лекция 22 Лекция 22 Локальные, сетевые и распределенные базы данных. Архитектура «файл- сервер». Двух и трехуровневая архитектура «клиент-сервер». Модель.
Поисковый спам Павел Кудинов Агентство «Точка Кипения» Технический директор Что это такое? Как это работает?
Разработка системы статистического анализа сообщений в социальных сетях с применением модели распределенных вычислений MapReduce Соискатель - Игнатенко.
Независимая система управления веб-содержимым Анисимов А. О. Под руководством Васючковой Т. С.
Основы операционных систем. Литература к курсу (основная) В.Е.Карпов, К.А.Коньков Основы операционных систем.
Построение эффективной системы фильтрации контента без использования DPI Черниевский Антон Олегович Директор по продажам ОАО «Интеллект Телеком»
Тема 3 Рассматриваемые вопросы 1. Классификация сетей 2. Назначение сетей 3. Компоненты вычислительных сетей 4. Топологии сетей 5. Архитектура сетей.
Студенников Валерий Юрьевич Лекции и материалы:
Слайд 1 из 11 Преимущества торговых решений на платформе 1С: Предприятие 8.2 Заржецкий Александр Руководитель департамента автоматизации непродовольственн.
Сервис WWW Веб-программирование. World Wide Web WWW - распределенная информационная система, предоставляющая доступ к гипертекстовым документам по протоколу.
Как снизить нагрузку на высокопосещаемый проект? Технический директор «Ленвендо» Виталий Гаврилов +7 (812) (Санкт-Петербург) +7 (495)
Мониторинг внедрения ИТ и ИС. Критерии эффективности ИР использование по времени; использование по мощности. В основе любой ИС лежит совокупность приложений,
Компьютерные сети. Компьютерная сеть (Computer NetWork, net - сеть, и work - работа) - это система обмена информацией между компьютерами. Основная цель:
Предпосылки формирования нового подхода к проектированию динамических ресурсов всемирной паутины ацп. Кейно П.П. Научный руководитель: проф., к.т.н. Силуянов.
называют cloud computing одной из самых перспективных стратегических технологий прогнозируют перемещение в ближайшие пять лет большей части существующих.
Транксрипт:

Событийные машины Сетевая многозадачность: событийные машины Павел Кудинов HighLoad 2007

Что такое сетевая многозадачность? Параллельная обработка сетевых соединений в рамках WWW: - входящие HTTP запросы - исходящие HTTP запросы

Когда это нужно? динамические страницы на базе готовых HTTPD – CGI – FastCGI дополнительные HTTP запросы браузеров – AJAX – IFRAME автономные HTTP серверы – прикладные демоны автономные HTTP клиенты – бот (web-crawler) – взаимодействующие веб-сервисы гибридные приложения (клиент+сервер) – шлюз – агрегатор – сложный веб-сервис

Почему это важно? Готовые решения часто не подходят! Понимание проблемы – необходимое условие её решения

Абстракция квантования Многозадачность – это квантование сетевых и вычислительных ресурсов параллельные процессы (IPC) мультиплексирование (multiplex) многопоточность (threads)

Параллельные процессы

+ применяется несколько CPU + полная изоляция контекста + не требуется микро синхронизация – требуется макро синхронизация – ресурсоёмкость – неконкурентный ввод/вывод – гибридная функция невозможна – неконтролируемое квантование

Мультиплексирование

+ не требуется микро синхронизация + не требуется макро синхронизация + максимально возможная эффективность + конкурентный ввод/вывод + идеальная модель гибридной функции + полный контроль квантования – контекст блокирует приложение – применяется только один CPU

Многопоточность

+ применяется несколько CPU + не требуется макро синхронизация + конкурентный ввод/вывод v достаточная эффективность v физический контроль квантования v дискретная модель гибридной функции v частичная изоляция контекста – требуется микро синхронизация

характеристикаIPCmultiplexthread конкурентный ввод/вывод–++ микро синхронизация++– макро синхронизация–++ изоляция контекста+–v эффективность–+v несколько CPU+–+ контроль квантования–+v гибридная функция–+v

Мультиплексирование: уровни абстракции 1. Системные функции poll, select, epoll, kqueue 2. Библиотеки libevent 3. Конечные автоматы POE - событийная машина на Perl 4.Распределённые объекты CORBA

POE: производительность + быстрее, чем mod_perl / FastCGI медленнее, чем libevent + синхронный ввод/вывод прикладных запросов в секунду

Кластеризация событийных машин

Объединение HTTP сервисов

Спасибо за внимание! Сетевая многозадачность: событийные машины Павел Кудинов Агентство «Точка Кипения» Технический директор