SlideShare ist ein Scribd-Unternehmen logo
1 von 13
Downloaden Sie, um offline zu lesen
Erlang для высоконагруженных
            систем

Особенности реализации Clustrx Watch


       Massive Solutions Inc., 2011
Современный кластер
Если не успеваем отреагировать...




      Счёт времени идёт на секунды.
Clustrx Watch — система мониторинга

●   Массовый мониторинг однотипных объектов - вычислительных
    узлов. Сбор данных от конечных агентов вместо опроса из
    центра.
●   Контроль инфраструктуры обеспечения
●   Мониторинг исполняемых задач
●   Выведение суммарного состояния групповой логикой
●   Тесная интеграция с системой управления задачами и системой
    аварийного отключения оборудования (Clustrx AESS)
●   Автоматический самоконтроль и обеспечение ручного контроля
●   Предсказание сбоев
●   Основные компоненты на Erlang + OTP
Важность задачи начинает приближаться к...




         Но доступные средства несоизмеримы.
Clustrx JobWatch —
           мониторинг исполняемых задач

●   Множество параметров состояния задачи
●   * Эффективность использования процессора
●   * Эффективность взаимодействия узлов
●   * Эффективность работы с хранилищем
●   Выводы в реальном времени
●   Интеграция с менеджером ресурсов
Erlang и OTP

++ Управляемость, диагностируемость,
пригодность к отладке
- Затраты производительности на VM и
сообщения
++ Прозрачность взаимодействия
- Адаптация программистов
++ Устойчивое к проблемам построение
++ Обновление без остановки
Сообщения на шине
{alarm,1,danger,{rack,sub_status},10600000020,
 danger,{subobject_status,11,7306},{1317,373795,958284},
 [{ts_gen,{1317,371995,958284}}]}

{alarm,2,cancel,{sensor_status,«MON_CPU_VCORE»,2},11505060010,1.04,
{sensor2alarm,<6228.355.0>},infinity,[{ts_gen,{1317,371985,998488}},
{mmu_origin,retransmit},{ip,{10,0,107,6}}]}


{{sensor,node},1,31807080010,{1210,1},[temp],{green,45.0,
{1317,372465,520286}},[{mmu_origin,retransmit},{ip,{10,0,49,8}}]}


Каждое из этих полей может быть условием для подписки, отдельно или
вместе.
Тегирование сообщений для фильтрации


     0x1002010000000000                            12106130010


                            {alarm,2,cancel,
                    {sensor_status,«MON_V_1_2»,1},
             12106130010,1.1,{sensor2alarm,<6228.355.0>},
                                 Infinity,
    [{ts_gen,{1317,372641,244205}},{ip,{10,0,8,13}},{na_origin,fresh}]}
Трансляция подписки из Erlang к агенту ШС


                Агент ШС


                   {0x1002100000000000:0xffff100000000000,
                    0x0003010000000000:0xffffff0000000000}

                mmc_mbus


        {all,[{type,alarm},{plane,eq,2},{level,ge,warning},{rack,eq,16#301}]}



          Целевое приложение
CBios, агенты и потребители


                    Шина сообщений


          Узел 1                               Узел 2
Агент      Клиент       Клиент       Агент      Клиент       Клиент
 ШС          1            2           ШС          1            2


Драйвер интерфейса ШС                Драйвер интерфейса ШС
        Clustrx CBios                        Clustrx CBios
Агент и локальные потребители


                              Суммарная подписка:
    Агент ШС                       {1:ff,0:0}
                                  {2:ff,40:40}




                          Подписка 2:
     Подписка 1:
                           {1:ff,40:f0}
      {1:ff,0:0}
                           {2:ff,40:f0}



Клиент 1           Клиент 2
Реализация шины сообщений

●   Поверх IP транспорта: TCP, SCTP
●   InfiniBand - позволяет перейти рубеж 1M/сек
●   Далее — фильтрация в адаптере
●   Отдельный транспорт или замена
    кластерных связей
●   Адаптеры для Erlang и C
●   Адаптеры для других языков — по
    необходимости
Massive
                         Solutions
Valentin Nechayev
Technical team leader
valentin.nechayev@massivesolutions.co.uk

 •••••
 ул. Срибнокильская 2а
 оф. 90-91
 02095, Киев,
 Украина
 +380 44 5748665
 +380 98 4360771

 info@massivesolutions.co.uk
 http://www.massivesolutions.co.uk

Weitere ähnliche Inhalte

Was ist angesagt?

разработка серверов и серверных приложений лекция №2
разработка серверов и серверных приложений лекция №2разработка серверов и серверных приложений лекция №2
разработка серверов и серверных приложений лекция №2Eugeniy Tyumentcev
 
ПВТ - осень 2014 - Лекция 6 - Атомарные операции. Внеочередное выполнение инс...
ПВТ - осень 2014 - Лекция 6 - Атомарные операции. Внеочередное выполнение инс...ПВТ - осень 2014 - Лекция 6 - Атомарные операции. Внеочередное выполнение инс...
ПВТ - осень 2014 - Лекция 6 - Атомарные операции. Внеочередное выполнение инс...Alexey Paznikov
 
разработка серверов и серверных приложений лекция №3
разработка серверов и серверных приложений лекция №3разработка серверов и серверных приложений лекция №3
разработка серверов и серверных приложений лекция №3Eugeniy Tyumentcev
 
ПВТ - весна 2015 - Лекция 6. Разработка параллельных структур данных на основ...
ПВТ - весна 2015 - Лекция 6. Разработка параллельных структур данных на основ...ПВТ - весна 2015 - Лекция 6. Разработка параллельных структур данных на основ...
ПВТ - весна 2015 - Лекция 6. Разработка параллельных структур данных на основ...Alexey Paznikov
 
2012 03 14_parallel_programming_lecture05
2012 03 14_parallel_programming_lecture052012 03 14_parallel_programming_lecture05
2012 03 14_parallel_programming_lecture05Computer Science Club
 
Дмитрий Кашицын, Троллейбус из буханки: алиасинг и векторизация в LLVM
Дмитрий Кашицын, Троллейбус из буханки: алиасинг и векторизация в LLVMДмитрий Кашицын, Троллейбус из буханки: алиасинг и векторизация в LLVM
Дмитрий Кашицын, Троллейбус из буханки: алиасинг и векторизация в LLVMSergey Platonov
 
Дракон в мешке: от LLVM к C++ и проблемам неопределенного поведения
Дракон в мешке: от LLVM к C++ и проблемам неопределенного поведенияДракон в мешке: от LLVM к C++ и проблемам неопределенного поведения
Дракон в мешке: от LLVM к C++ и проблемам неопределенного поведенияPlatonov Sergey
 
Антон Полухин, Немного о Boost
Антон Полухин, Немного о BoostАнтон Полухин, Немного о Boost
Антон Полухин, Немного о BoostSergey Platonov
 
Тропинка через минное поле — Леонычев Юрий
Тропинка через минное поле — Леонычев ЮрийТропинка через минное поле — Леонычев Юрий
Тропинка через минное поле — Леонычев ЮрийYandex
 

Was ist angesagt? (11)

разработка серверов и серверных приложений лекция №2
разработка серверов и серверных приложений лекция №2разработка серверов и серверных приложений лекция №2
разработка серверов и серверных приложений лекция №2
 
ПВТ - осень 2014 - Лекция 6 - Атомарные операции. Внеочередное выполнение инс...
ПВТ - осень 2014 - Лекция 6 - Атомарные операции. Внеочередное выполнение инс...ПВТ - осень 2014 - Лекция 6 - Атомарные операции. Внеочередное выполнение инс...
ПВТ - осень 2014 - Лекция 6 - Атомарные операции. Внеочередное выполнение инс...
 
разработка серверов и серверных приложений лекция №3
разработка серверов и серверных приложений лекция №3разработка серверов и серверных приложений лекция №3
разработка серверов и серверных приложений лекция №3
 
ПВТ - весна 2015 - Лекция 6. Разработка параллельных структур данных на основ...
ПВТ - весна 2015 - Лекция 6. Разработка параллельных структур данных на основ...ПВТ - весна 2015 - Лекция 6. Разработка параллельных структур данных на основ...
ПВТ - весна 2015 - Лекция 6. Разработка параллельных структур данных на основ...
 
2012 03 14_parallel_programming_lecture05
2012 03 14_parallel_programming_lecture052012 03 14_parallel_programming_lecture05
2012 03 14_parallel_programming_lecture05
 
Parallel STL
Parallel STLParallel STL
Parallel STL
 
Дмитрий Кашицын, Троллейбус из буханки: алиасинг и векторизация в LLVM
Дмитрий Кашицын, Троллейбус из буханки: алиасинг и векторизация в LLVMДмитрий Кашицын, Троллейбус из буханки: алиасинг и векторизация в LLVM
Дмитрий Кашицын, Троллейбус из буханки: алиасинг и векторизация в LLVM
 
Дракон в мешке: от LLVM к C++ и проблемам неопределенного поведения
Дракон в мешке: от LLVM к C++ и проблемам неопределенного поведенияДракон в мешке: от LLVM к C++ и проблемам неопределенного поведения
Дракон в мешке: от LLVM к C++ и проблемам неопределенного поведения
 
Антон Полухин, Немного о Boost
Антон Полухин, Немного о BoostАнтон Полухин, Немного о Boost
Антон Полухин, Немного о Boost
 
Тропинка через минное поле — Леонычев Юрий
Тропинка через минное поле — Леонычев ЮрийТропинка через минное поле — Леонычев Юрий
Тропинка через минное поле — Леонычев Юрий
 
Zagursky
ZagurskyZagursky
Zagursky
 

Andere mochten auch

Scaling websites with RabbitMQ A(rlvaro Videla)
Scaling websites with RabbitMQ   A(rlvaro Videla)Scaling websites with RabbitMQ   A(rlvaro Videla)
Scaling websites with RabbitMQ A(rlvaro Videla)Ontico
 
MySQL 5.7 - NoSQL - JSON, Protocol X, Document Store / Петр Зайцев (Percona)
MySQL 5.7 - NoSQL - JSON, Protocol X, Document Store / Петр Зайцев (Percona)MySQL 5.7 - NoSQL - JSON, Protocol X, Document Store / Петр Зайцев (Percona)
MySQL 5.7 - NoSQL - JSON, Protocol X, Document Store / Петр Зайцев (Percona)Ontico
 
Artisto: опыт запуска нейросетей в production / Эдуард Тянтов (Mail.ru Group)
Artisto: опыт запуска нейросетей в production / Эдуард Тянтов (Mail.ru Group)Artisto: опыт запуска нейросетей в production / Эдуард Тянтов (Mail.ru Group)
Artisto: опыт запуска нейросетей в production / Эдуард Тянтов (Mail.ru Group)Ontico
 
Sphinx 3.0 и RT-индексы на основном поиске Avito / Андрей Смирнов, Вячеслав К...
Sphinx 3.0 и RT-индексы на основном поиске Avito / Андрей Смирнов, Вячеслав К...Sphinx 3.0 и RT-индексы на основном поиске Avito / Андрей Смирнов, Вячеслав К...
Sphinx 3.0 и RT-индексы на основном поиске Avito / Андрей Смирнов, Вячеслав К...Ontico
 
MySQL® и MongoDB® - когда что лучше использовать? / Петр Зайцев (Percona)
MySQL® и MongoDB® - когда что лучше использовать? / Петр Зайцев (Percona)MySQL® и MongoDB® - когда что лучше использовать? / Петр Зайцев (Percona)
MySQL® и MongoDB® - когда что лучше использовать? / Петр Зайцев (Percona)Ontico
 
NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)
NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)
NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)Ontico
 

Andere mochten auch (6)

Scaling websites with RabbitMQ A(rlvaro Videla)
Scaling websites with RabbitMQ   A(rlvaro Videla)Scaling websites with RabbitMQ   A(rlvaro Videla)
Scaling websites with RabbitMQ A(rlvaro Videla)
 
MySQL 5.7 - NoSQL - JSON, Protocol X, Document Store / Петр Зайцев (Percona)
MySQL 5.7 - NoSQL - JSON, Protocol X, Document Store / Петр Зайцев (Percona)MySQL 5.7 - NoSQL - JSON, Protocol X, Document Store / Петр Зайцев (Percona)
MySQL 5.7 - NoSQL - JSON, Protocol X, Document Store / Петр Зайцев (Percona)
 
Artisto: опыт запуска нейросетей в production / Эдуард Тянтов (Mail.ru Group)
Artisto: опыт запуска нейросетей в production / Эдуард Тянтов (Mail.ru Group)Artisto: опыт запуска нейросетей в production / Эдуард Тянтов (Mail.ru Group)
Artisto: опыт запуска нейросетей в production / Эдуард Тянтов (Mail.ru Group)
 
Sphinx 3.0 и RT-индексы на основном поиске Avito / Андрей Смирнов, Вячеслав К...
Sphinx 3.0 и RT-индексы на основном поиске Avito / Андрей Смирнов, Вячеслав К...Sphinx 3.0 и RT-индексы на основном поиске Avito / Андрей Смирнов, Вячеслав К...
Sphinx 3.0 и RT-индексы на основном поиске Avito / Андрей Смирнов, Вячеслав К...
 
MySQL® и MongoDB® - когда что лучше использовать? / Петр Зайцев (Percona)
MySQL® и MongoDB® - когда что лучше использовать? / Петр Зайцев (Percona)MySQL® и MongoDB® - когда что лучше использовать? / Петр Зайцев (Percona)
MySQL® и MongoDB® - когда что лучше использовать? / Петр Зайцев (Percona)
 
NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)
NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)
NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)
 

Ähnlich wie Erlang для высоконагруженных систем (Валентин Нечаев)

Видео + Конференция. Обзор современных ВКС архитектур. Лев Якупов
Видео + Конференция. Обзор современных ВКС архитектур. Лев ЯкуповВидео + Конференция. Обзор современных ВКС архитектур. Лев Якупов
Видео + Конференция. Обзор современных ВКС архитектур. Лев ЯкуповTrueConf__
 
Для чего мы делали свой акторный фреймворк и что из этого вышло?
Для чего мы делали свой акторный фреймворк и что из этого вышло?Для чего мы делали свой акторный фреймворк и что из этого вышло?
Для чего мы делали свой акторный фреймворк и что из этого вышло?Yauheni Akhotnikau
 
Видеонаблюдение на АЗС
Видеонаблюдение на АЗСВидеонаблюдение на АЗС
Видеонаблюдение на АЗСDigital Sunrise
 
Gnevshev мониторинг
Gnevshev   мониторингGnevshev   мониторинг
Gnevshev мониторингkuchinskaya
 
Nexus 7000 – архитектура передачи данных. Поиск и устранение неисправностей.
Nexus 7000 – архитектура передачи данных. Поиск и устранение неисправностей.Nexus 7000 – архитектура передачи данных. Поиск и устранение неисправностей.
Nexus 7000 – архитектура передачи данных. Поиск и устранение неисправностей.Cisco Russia
 
Поиск неисправностей в беспроводных сетях, управляемых контроллерами
 Поиск неисправностей в беспроводных сетях, управляемых контроллерами Поиск неисправностей в беспроводных сетях, управляемых контроллерами
Поиск неисправностей в беспроводных сетях, управляемых контроллерамиCisco Russia
 
TMPA-2013 Smirnov
TMPA-2013 SmirnovTMPA-2013 Smirnov
TMPA-2013 SmirnovIosif Itkin
 
Безопасность ЦОД-часть 1
Безопасность ЦОД-часть 1Безопасность ЦОД-часть 1
Безопасность ЦОД-часть 1Cisco Russia
 
Toi vblazhkun-2012-05-24-v-0-5
Toi vblazhkun-2012-05-24-v-0-5Toi vblazhkun-2012-05-24-v-0-5
Toi vblazhkun-2012-05-24-v-0-5alexandr martynjuk
 
Networks in the cloud on OpenStask: problems we face and their solution
Networks in the cloud on OpenStask: problems we face and their solutionNetworks in the cloud on OpenStask: problems we face and their solution
Networks in the cloud on OpenStask: problems we face and their solutionVadim Ponomarev
 
Обновление продуктовой линейки Juniper Networks. Маршрутизация. Коммутация. Б...
Обновление продуктовой линейки Juniper Networks. Маршрутизация. Коммутация. Б...Обновление продуктовой линейки Juniper Networks. Маршрутизация. Коммутация. Б...
Обновление продуктовой линейки Juniper Networks. Маршрутизация. Коммутация. Б...TERMILAB. Интернет - лаборатория
 
Лекция 3. Векторизация кода (Code vectorization: SSE, AVX)
Лекция 3. Векторизация кода (Code vectorization: SSE, AVX)Лекция 3. Векторизация кода (Code vectorization: SSE, AVX)
Лекция 3. Векторизация кода (Code vectorization: SSE, AVX)Mikhail Kurnosov
 
Система Stealthwatch
Система StealthwatchСистема Stealthwatch
Система StealthwatchCisco Russia
 
Создание и развитие отечественной платформы с открытым программным кодом для ...
Создание и развитие отечественной платформы с открытым программным кодом для ...Создание и развитие отечественной платформы с открытым программным кодом для ...
Создание и развитие отечественной платформы с открытым программным кодом для ...ARCCN
 
Программируемые и программно определяемые сети ЦОД
Программируемые и программно определяемые сети ЦОДПрограммируемые и программно определяемые сети ЦОД
Программируемые и программно определяемые сети ЦОДCisco Russia
 
SDN: Что это? Что оно нам дает и как его использовать
SDN: Что это? Что оно нам дает и как его использоватьSDN: Что это? Что оно нам дает и как его использовать
SDN: Что это? Что оно нам дает и как его использоватьCisco Russia
 
"Контактный центр по запросу" от CTI, Платон Бегун
"Контактный центр по запросу" от CTI, Платон Бегун"Контактный центр по запросу" от CTI, Платон Бегун
"Контактный центр по запросу" от CTI, Платон БегунYulia Sedova
 
HighLoad++ 2018 Высоконагруженная распределенная система управления современн...
HighLoad++ 2018 Высоконагруженная распределенная система управления современн...HighLoad++ 2018 Высоконагруженная распределенная система управления современн...
HighLoad++ 2018 Высоконагруженная распределенная система управления современн...Vadim Podolniy
 
ащита удаленного доступа с помощью континент Tls vpn
ащита удаленного доступа с помощью континент Tls vpnащита удаленного доступа с помощью континент Tls vpn
ащита удаленного доступа с помощью континент Tls vpnOleg Boyko
 
Лекция 4. Векторизация кода (Code vectorization: SSE, AVX)
Лекция 4. Векторизация кода (Code vectorization: SSE, AVX)Лекция 4. Векторизация кода (Code vectorization: SSE, AVX)
Лекция 4. Векторизация кода (Code vectorization: SSE, AVX)Mikhail Kurnosov
 

Ähnlich wie Erlang для высоконагруженных систем (Валентин Нечаев) (20)

Видео + Конференция. Обзор современных ВКС архитектур. Лев Якупов
Видео + Конференция. Обзор современных ВКС архитектур. Лев ЯкуповВидео + Конференция. Обзор современных ВКС архитектур. Лев Якупов
Видео + Конференция. Обзор современных ВКС архитектур. Лев Якупов
 
Для чего мы делали свой акторный фреймворк и что из этого вышло?
Для чего мы делали свой акторный фреймворк и что из этого вышло?Для чего мы делали свой акторный фреймворк и что из этого вышло?
Для чего мы делали свой акторный фреймворк и что из этого вышло?
 
Видеонаблюдение на АЗС
Видеонаблюдение на АЗСВидеонаблюдение на АЗС
Видеонаблюдение на АЗС
 
Gnevshev мониторинг
Gnevshev   мониторингGnevshev   мониторинг
Gnevshev мониторинг
 
Nexus 7000 – архитектура передачи данных. Поиск и устранение неисправностей.
Nexus 7000 – архитектура передачи данных. Поиск и устранение неисправностей.Nexus 7000 – архитектура передачи данных. Поиск и устранение неисправностей.
Nexus 7000 – архитектура передачи данных. Поиск и устранение неисправностей.
 
Поиск неисправностей в беспроводных сетях, управляемых контроллерами
 Поиск неисправностей в беспроводных сетях, управляемых контроллерами Поиск неисправностей в беспроводных сетях, управляемых контроллерами
Поиск неисправностей в беспроводных сетях, управляемых контроллерами
 
TMPA-2013 Smirnov
TMPA-2013 SmirnovTMPA-2013 Smirnov
TMPA-2013 Smirnov
 
Безопасность ЦОД-часть 1
Безопасность ЦОД-часть 1Безопасность ЦОД-часть 1
Безопасность ЦОД-часть 1
 
Toi vblazhkun-2012-05-24-v-0-5
Toi vblazhkun-2012-05-24-v-0-5Toi vblazhkun-2012-05-24-v-0-5
Toi vblazhkun-2012-05-24-v-0-5
 
Networks in the cloud on OpenStask: problems we face and their solution
Networks in the cloud on OpenStask: problems we face and their solutionNetworks in the cloud on OpenStask: problems we face and their solution
Networks in the cloud on OpenStask: problems we face and their solution
 
Обновление продуктовой линейки Juniper Networks. Маршрутизация. Коммутация. Б...
Обновление продуктовой линейки Juniper Networks. Маршрутизация. Коммутация. Б...Обновление продуктовой линейки Juniper Networks. Маршрутизация. Коммутация. Б...
Обновление продуктовой линейки Juniper Networks. Маршрутизация. Коммутация. Б...
 
Лекция 3. Векторизация кода (Code vectorization: SSE, AVX)
Лекция 3. Векторизация кода (Code vectorization: SSE, AVX)Лекция 3. Векторизация кода (Code vectorization: SSE, AVX)
Лекция 3. Векторизация кода (Code vectorization: SSE, AVX)
 
Система Stealthwatch
Система StealthwatchСистема Stealthwatch
Система Stealthwatch
 
Создание и развитие отечественной платформы с открытым программным кодом для ...
Создание и развитие отечественной платформы с открытым программным кодом для ...Создание и развитие отечественной платформы с открытым программным кодом для ...
Создание и развитие отечественной платформы с открытым программным кодом для ...
 
Программируемые и программно определяемые сети ЦОД
Программируемые и программно определяемые сети ЦОДПрограммируемые и программно определяемые сети ЦОД
Программируемые и программно определяемые сети ЦОД
 
SDN: Что это? Что оно нам дает и как его использовать
SDN: Что это? Что оно нам дает и как его использоватьSDN: Что это? Что оно нам дает и как его использовать
SDN: Что это? Что оно нам дает и как его использовать
 
"Контактный центр по запросу" от CTI, Платон Бегун
"Контактный центр по запросу" от CTI, Платон Бегун"Контактный центр по запросу" от CTI, Платон Бегун
"Контактный центр по запросу" от CTI, Платон Бегун
 
HighLoad++ 2018 Высоконагруженная распределенная система управления современн...
HighLoad++ 2018 Высоконагруженная распределенная система управления современн...HighLoad++ 2018 Высоконагруженная распределенная система управления современн...
HighLoad++ 2018 Высоконагруженная распределенная система управления современн...
 
ащита удаленного доступа с помощью континент Tls vpn
ащита удаленного доступа с помощью континент Tls vpnащита удаленного доступа с помощью континент Tls vpn
ащита удаленного доступа с помощью континент Tls vpn
 
Лекция 4. Векторизация кода (Code vectorization: SSE, AVX)
Лекция 4. Векторизация кода (Code vectorization: SSE, AVX)Лекция 4. Векторизация кода (Code vectorization: SSE, AVX)
Лекция 4. Векторизация кода (Code vectorization: SSE, AVX)
 

Mehr von Ontico

One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...Ontico
 
Масштабируя DNS / Артем Гавриченков (Qrator Labs)
Масштабируя DNS / Артем Гавриченков (Qrator Labs)Масштабируя DNS / Артем Гавриченков (Qrator Labs)
Масштабируя DNS / Артем Гавриченков (Qrator Labs)Ontico
 
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)Ontico
 
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...Ontico
 
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...Ontico
 
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)Ontico
 
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...Ontico
 
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...Ontico
 
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)Ontico
 
MySQL Replication — Advanced Features / Петр Зайцев (Percona)
MySQL Replication — Advanced Features / Петр Зайцев (Percona)MySQL Replication — Advanced Features / Петр Зайцев (Percona)
MySQL Replication — Advanced Features / Петр Зайцев (Percona)Ontico
 
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...Ontico
 
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...Ontico
 
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...Ontico
 
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)Ontico
 
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)Ontico
 
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)Ontico
 
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)Ontico
 
100500 способов кэширования в Oracle Database или как достичь максимальной ск...
100500 способов кэширования в Oracle Database или как достичь максимальной ск...100500 способов кэширования в Oracle Database или как достичь максимальной ск...
100500 способов кэширования в Oracle Database или как достичь максимальной ск...Ontico
 
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...Ontico
 
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...Ontico
 

Mehr von Ontico (20)

One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
 
Масштабируя DNS / Артем Гавриченков (Qrator Labs)
Масштабируя DNS / Артем Гавриченков (Qrator Labs)Масштабируя DNS / Артем Гавриченков (Qrator Labs)
Масштабируя DNS / Артем Гавриченков (Qrator Labs)
 
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
 
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
 
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
 
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
 
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
 
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
 
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
 
MySQL Replication — Advanced Features / Петр Зайцев (Percona)
MySQL Replication — Advanced Features / Петр Зайцев (Percona)MySQL Replication — Advanced Features / Петр Зайцев (Percona)
MySQL Replication — Advanced Features / Петр Зайцев (Percona)
 
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
 
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
 
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
 
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
 
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
 
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
 
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
 
100500 способов кэширования в Oracle Database или как достичь максимальной ск...
100500 способов кэширования в Oracle Database или как достичь максимальной ск...100500 способов кэширования в Oracle Database или как достичь максимальной ск...
100500 способов кэширования в Oracle Database или как достичь максимальной ск...
 
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
 
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
 

Erlang для высоконагруженных систем (Валентин Нечаев)

  • 1. Erlang для высоконагруженных систем Особенности реализации Clustrx Watch Massive Solutions Inc., 2011
  • 2. Современный кластер Если не успеваем отреагировать... Счёт времени идёт на секунды.
  • 3. Clustrx Watch — система мониторинга ● Массовый мониторинг однотипных объектов - вычислительных узлов. Сбор данных от конечных агентов вместо опроса из центра. ● Контроль инфраструктуры обеспечения ● Мониторинг исполняемых задач ● Выведение суммарного состояния групповой логикой ● Тесная интеграция с системой управления задачами и системой аварийного отключения оборудования (Clustrx AESS) ● Автоматический самоконтроль и обеспечение ручного контроля ● Предсказание сбоев ● Основные компоненты на Erlang + OTP
  • 4. Важность задачи начинает приближаться к... Но доступные средства несоизмеримы.
  • 5. Clustrx JobWatch — мониторинг исполняемых задач ● Множество параметров состояния задачи ● * Эффективность использования процессора ● * Эффективность взаимодействия узлов ● * Эффективность работы с хранилищем ● Выводы в реальном времени ● Интеграция с менеджером ресурсов
  • 6. Erlang и OTP ++ Управляемость, диагностируемость, пригодность к отладке - Затраты производительности на VM и сообщения ++ Прозрачность взаимодействия - Адаптация программистов ++ Устойчивое к проблемам построение ++ Обновление без остановки
  • 7. Сообщения на шине {alarm,1,danger,{rack,sub_status},10600000020, danger,{subobject_status,11,7306},{1317,373795,958284}, [{ts_gen,{1317,371995,958284}}]} {alarm,2,cancel,{sensor_status,«MON_CPU_VCORE»,2},11505060010,1.04, {sensor2alarm,<6228.355.0>},infinity,[{ts_gen,{1317,371985,998488}}, {mmu_origin,retransmit},{ip,{10,0,107,6}}]} {{sensor,node},1,31807080010,{1210,1},[temp],{green,45.0, {1317,372465,520286}},[{mmu_origin,retransmit},{ip,{10,0,49,8}}]} Каждое из этих полей может быть условием для подписки, отдельно или вместе.
  • 8. Тегирование сообщений для фильтрации 0x1002010000000000 12106130010 {alarm,2,cancel, {sensor_status,«MON_V_1_2»,1}, 12106130010,1.1,{sensor2alarm,<6228.355.0>}, Infinity, [{ts_gen,{1317,372641,244205}},{ip,{10,0,8,13}},{na_origin,fresh}]}
  • 9. Трансляция подписки из Erlang к агенту ШС Агент ШС {0x1002100000000000:0xffff100000000000, 0x0003010000000000:0xffffff0000000000} mmc_mbus {all,[{type,alarm},{plane,eq,2},{level,ge,warning},{rack,eq,16#301}]} Целевое приложение
  • 10. CBios, агенты и потребители Шина сообщений Узел 1 Узел 2 Агент Клиент Клиент Агент Клиент Клиент ШС 1 2 ШС 1 2 Драйвер интерфейса ШС Драйвер интерфейса ШС Clustrx CBios Clustrx CBios
  • 11. Агент и локальные потребители Суммарная подписка: Агент ШС {1:ff,0:0} {2:ff,40:40} Подписка 2: Подписка 1: {1:ff,40:f0} {1:ff,0:0} {2:ff,40:f0} Клиент 1 Клиент 2
  • 12. Реализация шины сообщений ● Поверх IP транспорта: TCP, SCTP ● InfiniBand - позволяет перейти рубеж 1M/сек ● Далее — фильтрация в адаптере ● Отдельный транспорт или замена кластерных связей ● Адаптеры для Erlang и C ● Адаптеры для других языков — по необходимости
  • 13. Massive Solutions Valentin Nechayev Technical team leader valentin.nechayev@massivesolutions.co.uk ••••• ул. Срибнокильская 2а оф. 90-91 02095, Киев, Украина +380 44 5748665 +380 98 4360771 info@massivesolutions.co.uk http://www.massivesolutions.co.uk