Содержание
- 2. План Зачем нам Apache Kafka Введение в Кафку Архитектура Неочевидности Выводы
- 3. Зачем нам Apache Kafka
- 4. Зачем нам Apache Kafka - Vostok Hercules https://github.com/vostok
- 5. Зачем нам Apache Kafka - Vostok Hercules https://github.com/vostok - Логи
- 6. Зачем нам Apache Kafka - Vostok Hercules https://github.com/vostok Логи Метрики
- 7. Зачем нам Apache Kafka - Vostok Hercules https://github.com/vostok Логи Метрики Трассировки
- 8. Зачем нам Apache Kafka - Vostok Hercules https://github.com/vostok Логи Метрики Трассировки Бизнес-события
- 9. Зачем нам Apache Kafka Vostok Hercules Search & Recommendation Systems (SRS)
- 10. Зачем нам Apache Kafka Vostok Hercules [Kafka 2.0+] Search & Recommendation Systems (SRS)
- 11. Зачем нам Apache Kafka Vostok Hercules [Kafka 2.0+] Search & Recommendation Systems (SRS) [Kafka 0.11.x]
- 12. Блиц-опрос
- 13. Блиц-опрос Кто использует Apache Kafka?
- 14. Блиц-опрос Кто использует Apache Kafka? Версия…
- 15. Блиц-опрос Кто использует Apache Kafka? Версия…
- 16. Блиц-опрос Кто использует Apache Kafka? Версия… 1.x.x?
- 17. Блиц-опрос Кто использует Apache Kafka? Версия… 1.x.x? 2.x.x?
- 18. Введение в Apache Kafka
- 19. Введение в Apache Kafka Kafka Producer Producer
- 20. Введение в Apache Kafka Kafka Consumer Producer Consumer
- 21. Введение в Apache Kafka Kafka Cluster Cluster Producer Consumer
- 22. Введение в Apache Kafka Kafka Broker Cluster Producer Broker Consumer
- 23. Введение в Apache Kafka Producer Consumer Broker Cluster
- 24. Введение в Apache Kafka Kafka Topic Cluster Producer Broker Consumer Topic
- 25. Введение в Apache Kafka Pub-Sub с poll-механикой чтения Cluster Producer Broker Consumer Topic
- 26. Архитектура Apache Kafka Topic Broker Producer Consumer
- 27. Архитектура Kafka Topic topic = {partition} partition 0 partition 1 partition 2
- 28. Архитектура Kafka Topic topic = {partition} partition 0 partition 1 partition 2
- 29. Архитектура Kafka Topic topic = {partition} partition 0 partition 1 partition 2
- 30. Архитектура Kafka Topic topic = {partition} partition 0 partition 1 partition 2
- 31. Архитектура Kafka Topic topic = {partition} partition 0 partition 1 partition 2 offset = 0
- 32. Архитектура Kafka Topic topic = {partition} partition 0 partition 1 partition 2 offset = 1
- 33. Архитектура Kafka Topic topic = {partition} partition 0 partition 1 partition 2 offset = 2
- 34. Архитектура Kafka Topic topic = {partition} partition 0 partition 1 partition 2 offset = 3
- 35. Архитектура Kafka Topic partition = {segment}
- 36. Архитектура Kafka Topic partition = {segment}
- 37. Архитектура Kafka Topic partition = {segment} segment
- 38. Архитектура Kafka Topic partition = {segment} segment
- 39. Архитектура Kafka Topic partition = {segment} segment
- 40. Архитектура Kafka Topic partition = {segment} base offset
- 41. Архитектура Kafka Topic segment = (base_offset, data, index, timeindex) 00000000001234567890.log 00000000001234567890.index 00000000001234567890.timeindex
- 42. Архитектура Kafka Topic segment = (base_offset, data, index, timeindex) 00000000001234567890.log 00000000001234567890.index 00000000001234567890.timeindex
- 43. Архитектура Kafka Topic segment = (base_offset, data, index, timeindex) 00000000001234567890.log 00000000001234567890.index 00000000001234567890.timeindex
- 44. Архитектура Kafka Topic segment = (base_offset, data, index, timeindex) 00000000001234567890.log 00000000001234567890.index 00000000001234567890.timeindex log
- 45. Архитектура Kafka Topic segment = (base_offset, data, index, timeindex) 00000000001234567890.log 00000000001234567890.index 00000000001234567890.timeindex log Index record =
- 46. Архитектура Kafka Topic segment = (base_offset, data, index, timeindex) 00000000001234567890.log 00000000001234567890.index 00000000001234567890.timeindex log offset = 1234567890relative
- 47. Архитектура Kafka Topic segment = (base_offset, data, index, timeindex) 00000000001234567890.log 00000000001234567890.index 00000000001234567890.timeindex log offset = 1234567891relative
- 48. Архитектура Kafka Topic segment = (base_offset, data, index, timeindex) 00000000001234567890.log 00000000001234567890.index 00000000001234567890.timeindex log offset = 1234567892relative
- 49. Архитектура Kafka Topic segment = (base_offset, data, index, timeindex) 00000000001234567890.log 00000000001234567890.index 00000000001234567890.timeindex log offset = 1234567893relative
- 50. Архитектура Kafka Topic segment = (base_offset, data, index, timeindex) 00000000001234567890.log 00000000001234567890.index 00000000001234567890.timeindex
- 51. Архитектура Kafka Broker cluster = {broker} broker 1 broker 2 broker 3
- 52. Архитектура Kafka Broker Controller – координирует работу кластера broker 1 broker 2 broker 3
- 53. Архитектура Kafka Broker partition 0 partition 1 topic = {partition} broker 1 broker 2 broker 3
- 54. Архитектура Kafka Broker partition 0 partition 1 partition 2 partition 3 partition 0 partition 1 partition
- 55. Архитектура Kafka Broker partition 0 partition 1 partition 2 partition 3 partition 4 partition 0 partition
- 56. Архитектура Kafka Broker partition 0 partition 1 partition 2 partition 3 partition 4 partition 0 partition
- 57. Архитектура Kafka Broker partition 0 partition 1 partition 2 partition 3 partition 4 partition 0 partition
- 58. Архитектура Kafka Broker partition 0 partition 1 partition 2 partition 3 partition 4 partition 0 partition
- 59. Архитектура Kafka Broker partition 0 partition 1 partition 2 partition 3 partition 4 partition 0 partition
- 60. Архитектура Kafka Broker partition 0 partition 1 partition 2 partition 3 partition 4 partition 0 partition
- 61. Архитектура Kafka Broker partition 0 partition 1 partition 2 partition 3 partition 4 partition 0 partition
- 62. Архитектура Kafka Broker partition 0 partition 1 partition 2 partition 3 partition 4 partition 0 partition
- 63. Архитектура Kafka Broker partition 0 partition 1 partition 2 partition 3 partition 4 partition 0 partition
- 64. Архитектура Kafka Broker partition 0 partition 1 partition 2 partition 3 partition 4 partition 0 partition
- 65. Архитектура Kafka Broker partition 0 partition 1 partition 2 partition 3 partition 4 partition 0 partition
- 66. Архитектура Kafka Broker partition 0 partition 1 partition 2 partition 3 partition 4 partition 0 partition
- 67. Архитектура Kafka Broker broker 1 partition 0 partition 1 partition 2 partition 3 partition 4 broker
- 68. Архитектура Kafka Broker partition 0 partition 1 partition 2 partition 3 partition 4 partition 0 partition
- 69. Архитектура Kafka Broker broker 1 partition 0 partition 1 partition 2 partition 3 partition 4 broker
- 70. Архитектура Kafka Broker partition 0 partition 1 partition 2 partition 3 partition 4 partition 0 partition
- 71. Архитектура Kafka Producer
- 72. Архитектура Kafka Producer message = (key, value)
- 73. Архитектура Kafka Producer message = (key, value)
- 74. Архитектура Kafka Producer message = (key, value) partition = murmur2(key) % partitions
- 75. Архитектура Kafka Producer message = (key, value) partition = murmur2(key) % partitions // key != null
- 76. Архитектура Kafka Producer message = (key, value) partition = murmur2(key) % partitions // key != null
- 77. Архитектура Kafka Producer message = (key, value) partition = murmur2(key) % partitions // key != null
- 78. Архитектура Kafka Producer message = (key, value) partition = murmur2(key) % partitions // key != null
- 79. Архитектура Kafka Producer message = (key, value)
- 80. Архитектура Kafka Producer replica 0 replica 1 replica 2
- 81. Архитектура Kafka Producer replica 0 replica 1 replica 2 leader
- 82. Архитектура Kafka Producer replica 0 replica 1 replica 2 leader ISR ISR
- 83. Архитектура Kafka Producer Acknowledgement (ack) – подтверждение записи replica 0 replica 1 replica 2 acks =
- 84. Архитектура Kafka Producer Acknowledgement (ack) – подтверждение записи replica 0 replica 1 replica 2 acks =
- 85. Архитектура Kafka Producer Acknowledgement (ack) – подтверждение записи replica 0 replica 1 replica 2 acks =
- 86. Архитектура Kafka Producer Acknowledgement (ack) – подтверждение записи replica 0 replica 1 replica 2 acks =
- 87. Архитектура Kafka Producer Acknowledgement (ack) – подтверждение записи replica 0 replica 1 replica 2 acks =
- 88. Архитектура Kafka Producer Acknowledgement (ack) – подтверждение записи replica 0 replica 1 replica 2 acks =
- 89. Архитектура Kafka Producer Acknowledgement (ack) – подтверждение записи replica 0 replica 1 replica 2 acks =
- 90. Архитектура Kafka Producer Acknowledgement (ack) – подтверждение записи replica 0 replica 1 replica 2 acks =
- 91. Архитектура Kafka Producer Acknowledgement (ack) – подтверждение записи replica 0 replica 1 replica 2 acks =
- 92. Архитектура Kafka Producer Acknowledgement (ack) – подтверждение записи replica 0 replica 1 replica 2 acks =
- 93. Архитектура Kafka Producer Acknowledgement (ack) – подтверждение записи replica 0 replica 1 replica 2 acks =
- 94. Архитектура Kafka Producer Acknowledgement (ack) – подтверждение записи replica 0 replica 1 replica 2 acks =
- 95. Архитектура Kafka Producer Acknowledgement (ack) – подтверждение записи replica 0 replica 1 replica 2 acks =
- 96. Архитектура Kafka Producer Acknowledgement (ack) – подтверждение записи replica 0 replica 1 replica 2 acks =
- 97. Архитектура Kafka Producer Acknowledgement (ack) – подтверждение записи replica 0 replica 1 replica 2 acks =
- 98. Архитектура Kafka Producer Acknowledgement (ack) – подтверждение записи replica 0 replica 1 replica 2 acks =
- 99. Архитектура Kafka Producer Acknowledgement (ack) – подтверждение записи replica 0 replica 1 replica 2 acks =
- 100. Архитектура Kafka Consumer
- 101. Архитектура Kafka Consumer partition 0 partition 1 partition 2
- 102. Архитектура Kafka Consumer partition 0 partition 1 partition 2 след. сообщение
- 103. Архитектура Kafka Consumer partition 0 partition 1 partition 2 след. сообщение прочитано
- 104. Архитектура Kafka Consumer partition 0 partition 1 partition 2 след. сообщение прочитано
- 105. Архитектура Kafka Consumer partition 0 partition 1 partition 2 след. сообщение прочитано
- 106. Архитектура Kafka Consumer partition 0 partition 1 partition 2 след. сообщение прочитано
- 107. Архитектура Kafka Consumer partition 0 partition 1 partition 2 след. сообщение прочитано
- 108. Архитектура Kafka Consumer partition 0 partition 1 partition 2 0 1 2 3 4 5 6
- 109. Архитектура Kafka Consumer partition 0 partition 1 partition 2 0 1 2 3 4 5 6
- 110. Архитектура Kafka Consumer partition 0 partition 1 partition 2 0 1 2 3 4 5 6
- 111. Архитектура Kafka Consumer partition 0 partition 1 partition 2 0 1 2 3 4 5 6
- 112. Архитектура Kafka Consumer partition 0 partition 1 partition 2 0 1 2 3 4 5 6
- 113. Архитектура Kafka Consumer partition 0 partition 1 partition 2 0 1 2 3 4 5 6
- 114. Архитектура Kafka Consumer partition 0 partition 1 partition 2 0 1 2 3 4 5 6
- 115. Архитектура Kafka Consumer partition 0 partition 1 partition 2 0 1 2 3 4 5 6
- 116. Архитектура Kafka Consumer Commit offset partition 0
- 117. Архитектура Kafka Consumer Commit offset partition 0 прочитано
- 118. Архитектура Kafka Consumer Commit offset partition 0 commit offset прочитано
- 119. Архитектура Kafka Consumer Commit offset partition 0 commit offset прочитано
- 120. Архитектура Kafka Consumer Commit offset partition 0 commit offset прочитано
- 121. Архитектура Kafka Consumer Commit offset partition 0 commit offset прочитано не закоммичено
- 122. Архитектура Kafka Consumer Commit offset partition 0 commit offset прочитано не закоммичено
- 123. Архитектура Kafka Consumer Commit offset partition 0 commit offset прочитано не закоммичено
- 124. Архитектура Kafka Consumer partition 0 partition 1 partition 2 0 1 2 3 4 5 6
- 125. Архитектура Kafka Consumer partition 0 partition 1 partition 2 Consumer Group commit offset прочитано не закоммичено
- 126. Архитектура Kafka Consumer partition 0 partition 1 partition 2 0 1 2 3 4 5 0
- 127. Архитектура Kafka Consumer partition 0 partition 1 partition 2 0 1 2 3 4 5 0
- 128. Архитектура Kafka Consumer partition 0 partition 1 partition 2 0 1 2 3 4 5 0
- 129. Архитектура Kafka Consumer partition 0 partition 1 partition 2 0 1 2 3 4 5 0
- 130. Consumer Group Архитектура Kafka Consumer partition 0 partition 1 partition 2 0 1 2 3 4
- 131. Consumer Group Архитектура Kafka Consumer partition 0 partition 1 partition 2 0 1 2 3 4
- 132. Consumer Group Архитектура Kafka Consumer partition 0 partition 1 partition 2 0 1 2 3 4
- 133. Consumer Group Архитектура Kafka Consumer partition 0 partition 1 partition 2 0 1 2 3 4
- 134. Consumer Group Архитектура Kafka Consumer partition 0 partition 1 partition 2 0 1 2 3 4
- 135. Архитектура Kafka Consumer partition 0 partition 1 partition 2 0 1 2 3 4 5 6
- 136. Архитектура Kafka Consumer partition 0 partition 1 partition 2 0 1 2 3 4 5 6
- 137. Архитектура Kafka Consumer partition 0 partition 1 partition 2 0 1 2 3 4 5 6
- 139. Я
- 140. МЫ ХОТИМ ВЫБРАТЬ POSTGRESQL ДЛЯ НОВОГО ПРОЕКТА… Я
- 141. МЫ ХОТИМ ВЫБРАТЬ POSTGRESQL ДЛЯ НОВОГО ПРОЕКТА… НЕТ! УЖЕ ЕСТЬ KAFKA!!! Я
- 142. МЫ ХОТИМ ВЫБРАТЬ POSTGRESQL ДЛЯ НОВОГО ПРОЕКТА… НЕТ! УЖЕ ЕСТЬ KAFKA!!! НО У НАС ВСЕГО 100-500
- 143. МЫ ХОТИМ ВЫБРАТЬ POSTGRESQL ДЛЯ НОВОГО ПРОЕКТА… НЕТ! УЖЕ ЕСТЬ KAFKA!!! НО У НАС ВСЕГО 100-500
- 144. МЫ ХОТИМ ВЫБРАТЬ POSTGRESQL ДЛЯ НОВОГО ПРОЕКТА… НЕТ! УЖЕ ЕСТЬ KAFKA!!! ТОЛЬКО KAFKA!!! И НЕЧЕГО ДУМАТЬ!!
- 145. МЫ ХОТИМ ВЫБРАТЬ POSTGRESQL ДЛЯ НОВОГО ПРОЕКТА… НЕТ! УЖЕ ЕСТЬ KAFKA!!! ТОЛЬКО KAFKA!!! И НЕЧЕГО ДУМАТЬ!!
- 146. Неочевидности в Kafka
- 147. Неочевидности в Kafka … или что мы пережили за год эксплуатации
- 148. Неочевидности в Kafka … или что мы пережили за год эксплуатации (в очень кратком изложении)
- 149. Настройки – Как разломать кластер
- 150. Настройки – Как разломать кластер log.dirs
- 151. Настройки – Как разломать кластер log.dirs replica 0 replica 1
- 152. Настройки – Как разломать кластер log.dirs replica 0 replica 1
- 153. Настройки – Как разломать кластер log.dirs replica 0 replica 1
- 154. Настройки – Как разломать кластер log.dirs replica 0 replica 1
- 155. Настройки – Как разломать кластер log.dirs unclean.leader.election.enable=false replica 0 replica 1
- 156. Настройки – Как разломать кластер log.dirs unclean.leader.election.enable=false KIP-106 - Change Default unclean.leader.election.enabled from True to False
- 157. Настройки – Как разломать кластер log.dirs replica 0 replica 1
- 158. Настройки – Как разломать кластер log.dirs replica 0 replica 1
- 159. Настройки – Как разломать кластер log.dirs replica 0 replica 1 Брокер упал ☹
- 160. Настройки – Как разломать кластер log.dirs https://issues.apache.org/jira/browse/KAFKA-3410 replica 0 replica 1
- 161. Настройки – Как разломать кластер log.dirs (исправлено в 1.1) https://issues.apache.org/jira/browse/KAFKA-3410 replica 0 replica 1
- 162. Настройки – Настройки по умолчанию (1)
- 163. Настройки – Настройки по умолчанию (1) - default.replication.factor = 1
- 164. Настройки – Настройки по умолчанию (1) default.replication.factor = 1 auto.create.topics.enable = true
- 165. Настройки – Настройки по умолчанию (2)
- 166. Настройки – Настройки по умолчанию (2) - Настройки Broker, Consumer и Producer должны быть
- 167. Настройки – Настройки по умолчанию (2) - Настройки Broker, Consumer и Producer должны быть согласованы
- 168. Настройки – Настройки по умолчанию (2) Настройки Broker, Consumer и Producer должны быть согласованы message.max.bytes
- 169. Настройки – Настройки по умолчанию (2) Настройки Broker, Consumer и Producer должны быть согласованы message.max.bytes (Broker,
- 170. Настройки – Настройки по умолчанию (2) Настройки Broker, Consumer и Producer должны быть согласованы message.max.bytes (Broker,
- 171. Настройки – Настройки по умолчанию (2) Настройки Broker, Consumer и Producer должны быть согласованы message.max.bytes (Broker,
- 172. Настройки – Настройки по умолчанию (2) Настройки Broker, Consumer и Producer должны быть согласованы message.max.bytes (Broker,
- 173. Настройки – Умножение message.max.bytes (Broker, 1_000_012) max.request.size (Producer, 1_048_576) max.partition.fetch.bytes (Consumer, 1_048_576)
- 174. Настройки – Умножение message.max.bytes (Broker, 1_000_012) max.request.size (Producer, 1_048_576) max.partition.fetch.bytes (Consumer, 1_048_576) batch.size (Producer, 16_384)
- 175. Настройки – Умножение message.max.bytes (Broker, 1_000_012) max.request.size (Producer, 1_048_576) max.partition.fetch.bytes (Consumer, 1_048_576) batch.size (Producer, 16_384) KIP-126
- 176. API – Блокирующий send
- 177. API – Блокирующий send - Если мета-данные не доступны – producer.send() блокируется
- 178. API – Блокирующий send Если мета-данные не доступны – producer.send() блокируется max.block.ms = 60_000
- 179. API – Блокирующий send Если мета-данные не доступны – producer.send() блокируется max.block.ms = 60_000 KIP-286: producer.send()
- 180. API – Бесконечная десериализация
- 181. API – Бесконечная десериализация while(true) { ConsumerRecords records = consumer.poll(1_000); for (var record : records) {
- 182. API – Бесконечная десериализация try { /* parsing */ } catch (RuntimeException e) { throw new
- 183. API – Бесконечная десериализация try { /* parsing */ } catch (RuntimeException e) { throw new
- 184. API – Бесконечная десериализация try { /* parsing */ } catch (RuntimeException e) { throw new
- 185. API – Бесконечная десериализация try { /* parsing */ } catch (RuntimeException e) { throw new
- 186. API – Бесконечная десериализация try { /* parsing */ } catch (RuntimeException e) { throw new
- 187. API – Бесконечная десериализация try { /* parsing */ } catch (RuntimeException e) { throw new
- 188. API – Бесконечная десериализация try { /* parsing */ } catch (RuntimeException e) { throw new
- 189. API – Бесконечная десериализация try { /* parsing */ } catch (RuntimeException e) { throw new
- 190. API – Бесконечная десериализация Наш выбор: кастомный десериализатор, который вернёт null в случае ошибки
- 191. API – Бесконечная десериализация Наш выбор: кастомный десериализатор, который вернёт null в случае ошибки while(true) {
- 192. API – Бесконечная десериализация Наш выбор: кастомный десериализатор, который вернёт null в случае ошибки while(true) {
- 193. API – НЕчестное чтение
- 194. Чтение по 3 сообщения API – НЕчестное чтение partition 0 partition 1 partition 2
- 195. Чтение по 3 сообщения API – НЕчестное чтение partition 0 partition 1 partition 2
- 196. Чтение по 3 сообщения API – НЕчестное чтение partition 0 partition 1 partition 2
- 197. Чтение по 3 сообщения API – НЕчестное чтение partition 0 partition 1 partition 2
- 198. Чтение по 3 сообщения API – НЕчестное чтение partition 0 partition 1 partition 2
- 199. API – НЕчестное чтение - KIP-41: KafkaConsumer Max Records (0.10)
- 200. API – НЕчестное чтение KIP-41: KafkaConsumer Max Records (0.10) Жадный round-robin
- 201. API – НЕчестное чтение KIP-41: KafkaConsumer Max Records (0.10) Жадный round-robin KIP-387: Fair Message Consumption Across
- 202. Рутина – Ограничение на размер топика
- 203. Рутина – Ограничение на размер топика - log.retention.bytes (Broker, unlimited)
- 204. Рутина – Ограничение на размер топика log.retention.bytes (Broker, unlimited) retention.bytes (Topic)
- 205. Рутина – Ограничение на размер топика log.retention.bytes (Broker, unlimited) retention.bytes (Topic) – per partition
- 206. Рутина – Место на диске
- 207. Рутина – Место на диске - Нет автораспределения партиций по новым дискам
- 208. Рутина – Место на диске Нет автораспределения партиций по новым дискам KIP-113: Support replicas movement between
- 209. Рутина – Место на диске Нет автораспределения партиций по новым дискам KIP-113: Support replicas movement between
- 210. Рутина – Место на диске Нет автораспределения партиций по новым дискам KIP-113: Support replicas movement between
- 211. Рутина – Новый Брокер
- 212. Рутина – Новый Брокер - Нет автораспределения партиций на нового Брокера
- 213. Рутина – Новый Брокер Нет автораспределения партиций на нового Брокера Руками делать partition reassignment
- 214. Рутина – Новый Брокер Нет автораспределения партиций на нового Брокера Руками делать partition reassignment { "version":
- 215. Рутина – Новый Брокер Нет автораспределения партиций на нового Брокера Руками делать partition reassignment { "version":
- 216. Рутина – Новый Брокер Нет автораспределения партиций на нового Брокера Руками делать partition reassignment { "version":
- 217. ... ] } Рутина – Новый Брокер Нет автораспределения партиций на нового Брокера Руками делать partition
- 218. ... ] } Рутина – Новый Брокер { "version": 1, "partitions": [ { "topic": "hg2tg", "partition"
- 219. Рутина – Новый Брокер - Preferred leader – первый брокер в списке реплик { "version": 1,
- 220. Выводы
- 221. Выводы - Внимательное отношение к настройкам
- 222. Выводы Внимательное отношение к настройкам Особенности (недоработки?) клиентского API
- 223. Выводы Внимательное отношение к настройкам Особенности (недоработки?) клиентского API Большое количество рутины
- 224. Выводы Внимательное отношение к настройкам Особенности (недоработки?) клиентского API Большое количество рутины Документация о многом умалчивает
- 225. Выводы Внимательное отношение к настройкам Особенности (недоработки?) клиентского API Большое количество рутины Документация о многом умалчивает
- 226. Выводы Внимательное отношение к настройкам Особенности (недоработки?) клиентского API Большое количество рутины Документация о многом умалчивает
- 227. * В СКОРОМ ВРЕМЕНИ *
- 228. Я
- 229. Я НОВЫЙ ПРОЕКТ НАМЕЧАЕТСЯ, ДУМАЕМ НАД ВЫБОРОМ ТЕХНОЛОГИЙ…
- 230. МНОГО ЖЕ ВСЕГО! ДАВАЙ ДЕТАЛИ! Я НОВЫЙ ПРОЕКТ НАМЕЧАЕТСЯ, ДУМАЕМ НАД ВЫБОРОМ ТЕХНОЛОГИЙ…
- 231. МНОГО ЖЕ ВСЕГО! ДАВАЙ ДЕТАЛИ! ОБЕЩАЮТ ХАЙЛОАД, БИГ-ДАТУ, ВОТ ЭТО ВСЁ! Я НОВЫЙ ПРОЕКТ НАМЕЧАЕТСЯ, ДУМАЕМ
- 232. А-А-А! К ЧЁРТУ ВСЁ!!! Я ОБЕЩАЮТ ХАЙЛОАД, БИГ-ДАТУ, ВОТ ЭТО ВСЁ! МНОГО ЖЕ ВСЕГО! ДАВАЙ ДЕТАЛИ!
- 233. Я НОВЫЙ ПРОЕКТ НАМЕЧАЕТСЯ, ДУМАЕМ НАД ВЫБОРОМ ТЕХНОЛОГИЙ… А-А-А! К ЧЁРТУ ВСЁ!!! KAFKA! KAFKA! KAFKA! ОБЕЩАЮТ
- 234. Консистентность и доступность
- 235. Консистентность и доступность replica 0 replica 1 replica 2
- 236. Консистентность и доступность replica 0 replica 1 replica 2 acks = 1
- 237. Консистентность и доступность replica 0 replica 1 replica 2 acks = 1 процесс записи успешная запись
- 238. Консистентность и доступность replica 0 replica 1 replica 2 acks = 1 процесс записи
- 239. Консистентность и доступность replica 0 replica 1 replica 2 acks = 1 процесс записи успешная запись
- 240. Консистентность и доступность replica 0 replica 1 replica 2 acks = 1 процесс записи успешная запись
- 241. Консистентность и доступность replica 0 replica 1 replica 2 acks = 1 процесс записи успешная запись
- 242. Консистентность и доступность replica 0 replica 1 replica 2 acks = 1 процесс записи успешная запись
- 243. unclean leader election Консистентность и доступность replica 0 replica 1 replica 2 acks = 1 процесс
- 244. unclean leader election (но это не точно) Консистентность и доступность replica 0 replica 1 replica 2
- 245. Консистентность и доступность replica 0 replica 1 replica 2 acks = all min.insync.replicas = 3 процесс
- 246. Консистентность и доступность replica 0 replica 1 replica 2 acks = all min.insync.replicas = 3 процесс
- 247. Консистентность и доступность replica 0 replica 1 replica 2 acks = all min.insync.replicas = 3 процесс
- 248. Консистентность и доступность replica 0 replica 1 replica 2 процесс записи успешная запись недоступность
- 249. Консистентность и доступность replica 0 replica 1 replica 2 acks = all min.insync.replicas = 2 процесс
- 250. Консистентность и доступность replica 0 replica 1 replica 2 acks = all min.insync.replicas = 2 процесс
- 251. Консистентность и доступность replica 0 replica 1 replica 2 acks = all min.insync.replicas = 2 процесс
- 252. Консистентность и доступность replica 0 replica 1 replica 2 acks = all min.insync.replicas = 2 процесс
- 253. Консистентность и доступность replica 0 replica 1 replica 2 acks = all min.insync.replicas = 2 процесс
- 254. Консистентность и доступность replica 0 replica 1 replica 2 acks = all min.insync.replicas = 2 процесс
- 255. Консистентность и доступность replica 0 replica 1 replica 2 acks = all min.insync.replicas = 2 процесс
- 256. Консистентность и доступность replica 0 replica 1 replica 2 acks = all min.insync.replicas = 2 процесс
- 257. Консистентность и доступность replica 0 replica 1 replica 2 acks = all min.insync.replicas = 2 процесс
- 258. Консистентность и доступность replica 0 replica 1 replica 2 acks = all min.insync.replicas = 2 процесс
- 259. Консистентность и доступность replica 0 replica 1 replica 2 acks = all min.insync.replicas = 2 процесс
- 260. Консистентность и доступность replica 0 replica 1 replica 2 acks = all min.insync.replicas = 2 процесс
- 261. Консистентность и доступность replica 0 replica 1 replica 2 acks = all min.insync.replicas = 2 процесс
- 262. Консистентность и доступность replica 0 replica 1 replica 2 acks = all min.insync.replicas = 2 процесс
- 263. Консистентность и доступность replica 0 replica 1 replica 2 acks = all min.insync.replicas = 2 процесс
- 264. Консистентность и доступность replica 0 replica 1 replica 2 acks = all min.insync.replicas = 2 процесс
- 265. Консистентность и доступность replica 0 replica 1 replica 2 acks = all min.insync.replicas = 2 процесс
- 267. Скачать презентацию