Zk

315 views

Published on

Published in: Education
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
315
On SlideShare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
1
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Zk

  1. 1. Zookeeper, или как управлять зоопарком Андрей Степачевпятница, 25 января 13 г.
  2. 2. Основные принципыпятница, 25 января 13 г.
  3. 3. Файловая система / /app1/p1 P1 /app1 P2 /app1/p2 /app2 P3 /app1/p3 name: /app1 version: 10 name: /app1/p3 childs: [...] data: [...] data: [...] session: P33пятница, 25 января 13 г.
  4. 4. FIFO обработка сообщений и А-Линеаризация записи ZK Client ZK Client FIFO FIFO Request R R Processor W W W W DB DB DB W TX ZUB WW TX W TX TX4пятница, 25 января 13 г.
  5. 5. Кворум и 2-х фазный коммит ZK Quorum Follower Leader Follower 2P Commit Follower Client Client Client Client5пятница, 25 января 13 г.
  6. 6. Консистентность ZK Quorum Follower Leader Follower 1 2P Commit 1 1 Client Client Client Client 1 1 1 1 26пятница, 25 января 13 г.
  7. 7. Консистентность ZK Quorum Follower Leader Follower 1 2P Commit 2 2 Client Client Client Client 2 2 1 2 sync() read()7пятница, 25 января 13 г.
  8. 8. Консистентность ZK Quorum Follower Leader Follower 2 2P Commit 2 2 Client Client Client Client 2 2 2 2 sync() read()8пятница, 25 января 13 г.
  9. 9. Рецептыпятница, 25 января 13 г.
  10. 10. Рецепт: Управление конфигурацией /app1 /app1/config C1 C2 C310пятница, 25 января 13 г.
  11. 11. Рецепт: Рандеву (1/2) /app1 /app1/workers alive-w1 putData(ephemeral) Listen w1-queue putData W1 Leader11пятница, 25 января 13 г.
  12. 12. Рецепт: Рандеву (2/2) /app1 /app1/workers alive-w1 Listen w1-queue Listen W1 getData Leader putData task112пятница, 25 января 13 г.
  13. 13. Рецепты: Блокировки (1/6) /app1 /app1/my-lock lock-0001 C113пятница, 25 января 13 г.
  14. 14. Рецепты: Блокировки (2/6) /app1 /app1/my-lock lock-0001 lock-0002 C1 C214пятница, 25 января 13 г.
  15. 15. Рецепты: Блокировки (3/6) /app1 /app1/my-lock lock-0001 lock-0002 lock-0003 C1 C2 C315пятница, 25 января 13 г.
  16. 16. Рецепты: Блокировки (4/6) /app1 /app1/my-lock lock-0002 lock-0003 lock-0004 C1 C2 C316пятница, 25 января 13 г.
  17. 17. Рецепты: Блокировки (5/6) /app1 /app1/my-lock lock-0002 lock-0003 lock-0004 C1 C2 C317пятница, 25 января 13 г.
  18. 18. Рецепты: Блокировки (6/6) /app1 /app1/my-lock lock-0003 lock-0004 C1 C2 C318пятница, 25 января 13 г.
  19. 19. Производительностьпятница, 25 января 13 г.
  20. 20. 250 clients, 100 msg in-fly, 1kb20пятница, 25 января 13 г.
  21. 21. Масштабируемость Servers 100% Reads 0% Reads 13 460k 8k 9 296k 12k 7 257k 14k 5 165k 18k 3 87k 21k21пятница, 25 января 13 г.
  22. 22. Реакция на сбои • 1 - follower • 4a,b,c - followers • 2 - different follower • 5 - leader • 3 - leader • 6 - leader recovery22пятница, 25 января 13 г.
  23. 23. Задержки (latency) • 1kb • средняя для 3 - 1.2ms • Синхронный create • средняя для 9 - 1.4ms • Асинхронный delete • И так 50000 раз servers 3 5 7 9 workers 1 776 748 758 711 10 1831 1831 1572 1540 20 2740 2336 1934 189023пятница, 25 января 13 г.
  24. 24. Андрей Степачев +7 916 635-23-16 octo@yandex-team.ru По материалам Yahoo.Research Спасибопятница, 25 января 13 г.

×