IT заметки по программированию
IT заметки по программированию
IT заметки по программированию
IT заметки по программированию

В прошлой статье рассмотрели ручную установку и запуск etcdkeeper в командной строке. Автоматизируем этот процесс и развернем etcdkeeper с помощью Ansible, настроим автоматический запуск в виде службы, настроим доступ с помощью логина и пароля. ...

продолжить чтение


WAL (Write-Ahead Logging) — это важная технология в PostgreSQL, обеспечивающая целостность данных и защиту от сбоев. Она играет ключевую роль в репликации, восстановлении после сбоев и обеспечении транзакционной целостности базы данных. Основные принципы WAL в PostgreSQL: Запись данных в журнал перед изменением базы данных: При изменении данных в базе данных PostgreSQL сначала записывает......

продолжить чтение


В соответствии с CAP теоремой, в современных распределенных системах невозможно одновременно достичь всех трёх характеристик — Consistency (Консистентность), Availability (Доступность) и Partition Tolerance (Устойчивость к разделению)....

продолжить чтение


В Go для работы с PostgreSQL можно использовать два популярных подхода для управления соединениями с базой данных: sql.DB и pgxpool.Pool. Оба подхода предлагают пул соединений, но есть несколько отличий между ними, которые могут повлиять на выбор в зависимости от конкретных требований проекта....

продолжить чтение


Kafka Consumer является компонентом, который читает данные из Kafka (или любой другой системы сообщений, подобной Kafka). В контексте архитектуры приложения, его можно рассматривать как адаптер, но не контроллер. Причем его роль отличается от роли контроллеров в веб-приложениях....

продолжить чтение


Если вы работаете через pgbouncer, то недостаточно просто завести пользователя в базе PostgreSQL. Чтобы пользователь мог подключаться через pgbouncer, его учетные данные должны быть также прописаны в файле userlist.txt, который указан в конфигурации pgbouncer в параметре auth_file....

продолжить чтение


Когда в Apache Kafka падает мастер (лидер) одного из разделов (partitions), Kafka автоматически инициирует процесс перебалансировки и выбора нового лидера из числа реплик этого раздела. Давайте разберем, что происходит и как это влияет на производительность и доступность....

продолжить чтение


В Redis параметр protected-mode отвечает за дополнительную защиту от несанкционированного доступа, если сервер Redis не сконфигурирован должным образом. В контексте кластера Redis (в частности, с Sentinel или в режиме репликации) значение этого параметра должно быть выставлено на no при условии, что все настройки безопасности выполнены (например, ограничение доступа через файрвол или аутентификация с......

продолжить чтение


В ClickHouse отсутствует традиционное разделение на "мастер" и "реплика", как это реализовано в реляционных базах данных (например, PostgreSQL или MySQL). В ClickHouse используется модель шардирования и репликации, которая функционирует несколько иначе....

продолжить чтение


Чтобы запустить PostgreSQL через Patroni, необходимо выполнить несколько шагов для настройки и старта кластера PostgreSQL под управлением Patroni. Этот процесс включает создание конфигурационного файла Patroni, настройку зависимости DCS (например, etcd) и инициализацию кластера....

продолжить чтение


Да, в ClickHouse конфигурационные файлы по умолчанию используют формат XML. Это стандарт для конфигурации сервера, так как ClickHouse изначально ориентировался на использование XML для настройки различных параметров, таких как сетевые настройки, кластеры, права доступа и другие элементы инфраструктуры....

продолжить чтение


Пакет envconfig в Go предназначен для удобной загрузки переменных окружения в структуры. Это популярный инструмент, который позволяет легко маппить переменные окружения на заранее определённые поля структуры и упрощает управление конфигурацией приложения....

продолжить чтение


В Go с помощью библиотеки go.etcd.io/etcd/client/v3 можно отслеживать изменения в etcd-кластере, используя функциональность watcher. Watcher позволяет отслеживать изменения ключей в etcd и получать уведомления, когда данные изменяются....

продолжить чтение


etcd — это распределенное хранилище ключ-значение, созданное для обеспечения надёжного хранения данных в отказоустойчивых кластерах. Оно используется для хранения конфигураций и координации служб в системах, таких как Kubernetes. Основной алгоритм согласованности — Raft, который обеспечивает согласованность данных между всеми узлами кластера....

продолжить чтение


Представление — это особый тип виртуальной таблицы, которая создаётся с помощью команды «Создать представление». Он содержит все данные, полученные из соответствующего выражения запроса....

продолжить чтение