skytools помощь в вопросах масштабирования (Артем Носов)
TRANSCRIPT
![Page 1: SkyTools помощь в вопросах масштабирования (Артем Носов)](https://reader034.vdocuments.pub/reader034/viewer/2022050805/557f221bd8b42aea318b5027/html5/thumbnails/1.jpg)
SkyTools: помощь в вопросах масштабирования
Артём Носов
![Page 2: SkyTools помощь в вопросах масштабирования (Артем Носов)](https://reader034.vdocuments.pub/reader034/viewer/2022050805/557f221bd8b42aea318b5027/html5/thumbnails/2.jpg)
План доклада● Skytools: готовые решения от Skype
● Основы PgQ: очередь, поставщик и потребитель;
● Londiste — как средство репликации;
● Проблемы масштабирования skytools 2.x
● Светлое будущее
![Page 3: SkyTools помощь в вопросах масштабирования (Артем Носов)](https://reader034.vdocuments.pub/reader034/viewer/2022050805/557f221bd8b42aea318b5027/html5/thumbnails/3.jpg)
Компоненты SkyTools● PgQ● londiste● walmgr
![Page 4: SkyTools помощь в вопросах масштабирования (Артем Носов)](https://reader034.vdocuments.pub/reader034/viewer/2022050805/557f221bd8b42aea318b5027/html5/thumbnails/4.jpg)
Применение PgQ● Асинхронная обработка событий● Обработка группы событий (batch)● Репликация
![Page 5: SkyTools помощь в вопросах масштабирования (Артем Носов)](https://reader034.vdocuments.pub/reader034/viewer/2022050805/557f221bd8b42aea318b5027/html5/thumbnails/5.jpg)
Под капотом
![Page 6: SkyTools помощь в вопросах масштабирования (Артем Носов)](https://reader034.vdocuments.pub/reader034/viewer/2022050805/557f221bd8b42aea318b5027/html5/thumbnails/6.jpg)
Пример
activity queue
Rating Consumer(Realtime)
Activity consumer
user stat table
Comet
Memcached
![Page 7: SkyTools помощь в вопросах масштабирования (Артем Носов)](https://reader034.vdocuments.pub/reader034/viewer/2022050805/557f221bd8b42aea318b5027/html5/thumbnails/7.jpg)
Сильные стороны● Поддержка транзакций
● Эффективная обработка событий
● Нет ограничений на количество поставщиков и потребителей
● Надежность
● Простота использования
● Open Source
![Page 8: SkyTools помощь в вопросах масштабирования (Артем Носов)](https://reader034.vdocuments.pub/reader034/viewer/2022050805/557f221bd8b42aea318b5027/html5/thumbnails/8.jpg)
PgQ: ticker● Без ticker(a) нет batch(ей)● Без batch(ей) события не обрабатываются● Держите ticker всегда запущенным!
![Page 9: SkyTools помощь в вопросах масштабирования (Артем Носов)](https://reader034.vdocuments.pub/reader034/viewer/2022050805/557f221bd8b42aea318b5027/html5/thumbnails/9.jpg)
Параметры очереди ● ticker_max_lag● ticker_idle_period● ticker_max_count● rotation_period
![Page 10: SkyTools помощь в вопросах масштабирования (Артем Носов)](https://reader034.vdocuments.pub/reader034/viewer/2022050805/557f221bd8b42aea318b5027/html5/thumbnails/10.jpg)
Londiste — master/slave replay
![Page 11: SkyTools помощь в вопросах масштабирования (Артем Носов)](https://reader034.vdocuments.pub/reader034/viewer/2022050805/557f221bd8b42aea318b5027/html5/thumbnails/11.jpg)
В чем подвох
![Page 12: SkyTools помощь в вопросах масштабирования (Артем Носов)](https://reader034.vdocuments.pub/reader034/viewer/2022050805/557f221bd8b42aea318b5027/html5/thumbnails/12.jpg)
request queue
notification fake table
1 событие
1 событие
10000событий
request consumer
![Page 13: SkyTools помощь в вопросах масштабирования (Артем Носов)](https://reader034.vdocuments.pub/reader034/viewer/2022050805/557f221bd8b42aea318b5027/html5/thumbnails/13.jpg)
notification queue_1
notification queue_..
notification fake table
notification queue_100
email notification consumer_1
email notification consumer_..
email notification consumer_100
![Page 14: SkyTools помощь в вопросах масштабирования (Артем Носов)](https://reader034.vdocuments.pub/reader034/viewer/2022050805/557f221bd8b42aea318b5027/html5/thumbnails/14.jpg)
Мониторинг ● pgq.get_consumer_info● pgqadm.py status● cacti и nagios
![Page 15: SkyTools помощь в вопросах масштабирования (Артем Носов)](https://reader034.vdocuments.pub/reader034/viewer/2022050805/557f221bd8b42aea318b5027/html5/thumbnails/15.jpg)
pgq.get_consumer_info() queue_name | consumer_name | lag | last_seen
-----------------+-----------------------+-----------------+-----------------
load_avatars_1 | load_avatars_consumer | 00:00:42.083408 | 00:00:37.561954
load_avatars_2 | load_avatars_consumer | 00:00:42.081061 | 00:00:37.653641
load_avatars_3 | load_avatars_consumer | 00:00:42.082729 | 00:00:37.906649
load_avatars_4 | load_avatars_consumer | 00:00:42.081907 | 00:00:37.574957
load_avatars_5 | load_avatars_consumer | 00:00:42.08163 | 00:00:37.840843
![Page 16: SkyTools помощь в вопросах масштабирования (Артем Носов)](https://reader034.vdocuments.pub/reader034/viewer/2022050805/557f221bd8b42aea318b5027/html5/thumbnails/16.jpg)
08:00 09:00 10:00 11:00 12:00 13:00 14:00 15:00 16:00 17:00 18:00 19:00 20:000
100
200
300
400
500
600
700
800
900
1000
Время
Ко
ли
чест
во с
об
ыти
й
![Page 17: SkyTools помощь в вопросах масштабирования (Артем Носов)](https://reader034.vdocuments.pub/reader034/viewer/2022050805/557f221bd8b42aea318b5027/html5/thumbnails/17.jpg)
SkyTools 3 ● Cooperative consumer● pgqd● Londiste: Parallel COPY
![Page 18: SkyTools помощь в вопросах масштабирования (Артем Носов)](https://reader034.vdocuments.pub/reader034/viewer/2022050805/557f221bd8b42aea318b5027/html5/thumbnails/18.jpg)
Вопросы?