Исследование алгоритмов консенсуса в распределённой системе Apache Kafka

Подаруев Дмитрий Сергеевич

Аннотация


В работе проводится сравнение различных способов решений задачи консенсуса в распределённых системах. Для их изучения выбрана распределённая система Apache Kafka. В основной части обзорно рассматривается архитектура этой системы, а также детали реализации двух способов решения задачи консенсуса, применяемые в ней. С целью их экспериментального сравнения реализована программа, которая тестирует каждый из способов на определённом наборе сценариев. Результаты работы содержат выявленные преимущества и недостатки каждого из решений, а также практические рекомендации, которые помогут сделать правильный выбор при необходимости реализации алгоритма консенсуса в какой-либо распределённой системе. Помимо этих рекомендаций, работа содержит рекомендации по настройке системы Apache Kafka для обеспечения наиболее эффективной её работы.