Top Banner
Знакомтесь Лапшин Антон
20

Ivbit erlang презентация

Jul 27, 2015

Download

Documents

jskonst
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Ivbit   erlang презентация

Знакомтесь

Лапшин Антон

Page 2: Ivbit   erlang презентация

Немного истории•1991 - Создание языка

•1992 - Массовое применение в телекомуникациях

•1998 - переход OpSo

•В настоящее время - поддерживается Ericsson и OpSo сообществом

Page 3: Ivbit   erlang презентация

Что это?

•Функциональный язык с динамической типизацией

•Виртуальная машина

•OTP + Стандартные библиотеки

Page 4: Ivbit   erlang презентация

Что есть «из коробки»?•http клиент/сервер

•ftp клиент/сервер

•ssh клиент/сервер

•NoSQL База данных (Mnesia)

•Open Telecommunication Platform

•Erlang консоль

•Erlang VM

Page 5: Ivbit   erlang презентация

Особенности Erlang VM

•Модель акторов

•«Горячая» замена кода

•Легковесные потоки

•Внешние интерфейсы

Page 6: Ivbit   erlang презентация

Модель акторов

Наблюдатель Рабочий

Page 7: Ivbit   erlang презентация

Поток•Не имеет общей памяти и

общего состояния с другими потоками

•Имеет собственный Inbox

•Может обмениватся своим состоянием через асинхронные сообщения

Page 8: Ivbit   erlang презентация

Асинхронные потоки

Нет глобальногосостояния

Page 9: Ivbit   erlang презентация

Дерево контроля

Page 10: Ivbit   erlang презентация

Сборка мусора

Page 11: Ivbit   erlang презентация

Горизонтальная масштабируемость

Page 12: Ivbit   erlang презентация

Внесение изменений

Перезагрузка каждой ноды или сервера целиком

при обновлении кода

«Горячая» замена кода без остановки ноды или сервера

целиком

Page 13: Ivbit   erlang презентация

Особенности разработки

Page 14: Ivbit   erlang презентация

Нет переменных

•X = 5. (ok)

•X = 6. (error)

•X = X+2. (error)

WTF O_o?

Page 15: Ivbit   erlang презентация

Сопоставление

•Связанные значения - сравнение

•Не связанные значения - именование

Page 16: Ivbit   erlang презентация

Сопоставление

Page 17: Ivbit   erlang презентация

Рекурсия - наше все!

Page 18: Ivbit   erlang презентация

Защитное программирование

Page 19: Ivbit   erlang презентация

Защитное программирование

Пускай падает!

Page 20: Ivbit   erlang презентация

Благодарю за внимание

Лапшин Антонe-mail: [email protected]: lapshinanton