Екатерина Войденко "Интранет и синхронизация"
DESCRIPTION
Рассказ в формате «lite», о том, как мы живем с множеством разных технологий внутри, как запускаем новые сервисы, с какими проблемами при синхронизации данных сталкиваемся и как их решаем.TRANSCRIPT
Войденко ЕкатеринаСистемный администратор
Интранет и синхронизация
Я.Субботник, Санкт-Петербург 30 июня 2012 года
2
О чем речь?
Почему интранет
3
Много разных маленьких сущностей на разных технологиях
У каждого своя история
Почему интранет
4
Сервисы «по наследству», написанные «на коленке» за полтора дня
Встречаем новый сервис — DATING!
А что вообще мы имеем
5
И зачем синхронизировать?
6
● Маленький, но гордый сервис «библиотека» хочет получать данные о логинах сотрудников
● Большая и любимая система деплоя хочет знать кто, что и куда может деплоить
И зачем синхронизировать?
7
● JIRA Wiki→● Коллега создал встречу в календаре и уехал в
отпуск
8
Что синхронизируем
Что синхронизируем
9
● Файлы
Что синхронизируем
10
● События
Что синхронизируем
11
● Структуры данных
12
Как мы это делаем
Файлы
13
● Rsync● Распределенная фс
(elliptics, HDFS, cifs, mulca)● MongoDB (документы)
Данные
14
● Импорты по крону
Данные
15
● API
Данные
16
● Общие базы данных
Данные
17
● Собственные костылики
Данные
18
● Собственные костылики
Данные
19
● Паттерн PubSub
События
20
Отличаются от данных лишь скоростью доставки
PubSub● amqp● Zeromq● pubsubhubbub
21
Как вы понимаете, со всеми этими проблемами мы уже столкнулись...
Уменьшаем энтропию
22
Свозим данные в одно место ● Небезопасно, включаем паранойю!
Уменьшаем количество сущностей
Свозим базы в одно место
23
Идеальный мир
О, дивный новый мир
24
Где сервисы кластеризованы, не падают, продуманы и одинаковы по своей структуре.
Где не так много импортов.
Где есть разработчики.
Мечты мечты...