<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://www.wikicshse.ru/index.php?action=history&amp;feed=atom&amp;title=%D0%9C%D0%BE%D0%B4%D0%B5%D0%BB%D1%8C%D0%BD%D0%B0%D1%8F_%D1%80%D0%B5%D0%B0%D0%BB%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F_%D0%B8%D0%BD%D1%82%D0%B5%D1%80%D1%84%D0%B5%D0%B9%D1%81%D0%B0_ZooKeeper_%D0%B4%D0%BB%D1%8F_%D1%82%D0%B5%D1%81%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F</id>
	<title>Модельная реализация интерфейса ZooKeeper для тестирования - История изменений</title>
	<link rel="self" type="application/atom+xml" href="https://www.wikicshse.ru/index.php?action=history&amp;feed=atom&amp;title=%D0%9C%D0%BE%D0%B4%D0%B5%D0%BB%D1%8C%D0%BD%D0%B0%D1%8F_%D1%80%D0%B5%D0%B0%D0%BB%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F_%D0%B8%D0%BD%D1%82%D0%B5%D1%80%D1%84%D0%B5%D0%B9%D1%81%D0%B0_ZooKeeper_%D0%B4%D0%BB%D1%8F_%D1%82%D0%B5%D1%81%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F"/>
	<link rel="alternate" type="text/html" href="https://www.wikicshse.ru/index.php?title=%D0%9C%D0%BE%D0%B4%D0%B5%D0%BB%D1%8C%D0%BD%D0%B0%D1%8F_%D1%80%D0%B5%D0%B0%D0%BB%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F_%D0%B8%D0%BD%D1%82%D0%B5%D1%80%D1%84%D0%B5%D0%B9%D1%81%D0%B0_ZooKeeper_%D0%B4%D0%BB%D1%8F_%D1%82%D0%B5%D1%81%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F&amp;action=history"/>
	<updated>2026-06-06T18:46:26Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.45.3</generator>
	<entry>
		<id>https://www.wikicshse.ru/index.php?title=%D0%9C%D0%BE%D0%B4%D0%B5%D0%BB%D1%8C%D0%BD%D0%B0%D1%8F_%D1%80%D0%B5%D0%B0%D0%BB%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F_%D0%B8%D0%BD%D1%82%D0%B5%D1%80%D1%84%D0%B5%D0%B9%D1%81%D0%B0_ZooKeeper_%D0%B4%D0%BB%D1%8F_%D1%82%D0%B5%D1%81%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F&amp;diff=1210&amp;oldid=prev</id>
		<title>imported&gt;Aapoludnitsin: Новая страница: «{{Карточка_командного_проекта |name=Модельная реализация интерфейса ZooKeeper для тестировани…»</title>
		<link rel="alternate" type="text/html" href="https://www.wikicshse.ru/index.php?title=%D0%9C%D0%BE%D0%B4%D0%B5%D0%BB%D1%8C%D0%BD%D0%B0%D1%8F_%D1%80%D0%B5%D0%B0%D0%BB%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F_%D0%B8%D0%BD%D1%82%D0%B5%D1%80%D1%84%D0%B5%D0%B9%D1%81%D0%B0_ZooKeeper_%D0%B4%D0%BB%D1%8F_%D1%82%D0%B5%D1%81%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F&amp;diff=1210&amp;oldid=prev"/>
		<updated>2018-10-15T11:48:49Z</updated>

		<summary type="html">&lt;p&gt;Новая страница: «{{Карточка_командного_проекта |name=Модельная реализация интерфейса ZooKeeper для тестировани…»&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Карточка_командного_проекта&lt;br /&gt;
|name=Модельная реализация интерфейса ZooKeeper для тестирования&lt;br /&gt;
|company=Яндекс&lt;br /&gt;
|semester=Осень 2018&lt;br /&gt;
|course=3-4&lt;br /&gt;
|number_of_students=?&lt;br /&gt;
|categorize=yes&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Для координации реплик в ClickHouse используется ZooKeeper. Многие пользователи ClickHouse хотели бы иметь возможность использовать для координации некоторые другие системы вместо ZooKeeper. Рассматриваемыми вариантами таких систем являются Etcd, Consul, FoundationDB. Это весьма проблематично, так как эти системы существенно отличаются по интерфейсам и возможностям.&lt;br /&gt;
&lt;br /&gt;
Тем не менее, для того, чтобы эта задача стала возможной, в ClickHouse обобщён интерфейс взаимодействия с ZooKeeper, и теперь на его место можно подставлять другие реализации. В первую очередь, это полезно для тестирования. Хотя в ClickHouse есть интеграционные тесты, поднимающие кластер и эмулирующие network partitions, они довольно громоздкие, и для тестирования корректности использования интерфейса, было бы также полезно сделать модельную реализацию интерфейса, подменяющую ZooKeeper.&lt;br /&gt;
&lt;br /&gt;
Для целей тестирования, эта реализация может быть не распределённой и не сохраняющей данные при перезапуске, но с широкой возможностью эмуляции сбоев, чтобы удобнее протестировать корректность работы прикладного кода в краевых случаях.&lt;br /&gt;
&lt;br /&gt;
Если с модельной реализацией всё пойдёт хорошо, то это приоткроет путь для поддержки другой системы координации вместо ZooKeeper.&lt;/div&gt;</summary>
		<author><name>imported&gt;Aapoludnitsin</name></author>
	</entry>
</feed>