Когда следует использовать master-slave в БД

Python Senior Без компании
Когда следует использовать master-slave в БД
Ответы
Master-slave репликация в БД применяется для: - **Масштабирования чтения** — slave-узлы обрабатывают read-запросы, разгружая master. - **Отказоустойчивости** — при падении master можно переключиться на slave. - **Резервного копирования** — slave может использоваться для бэкапов без нагрузки на master. **Ограничения:** - Запись всегда идет только в master (риск single point of failure). - Репликация асинхронна — возможны задержки данных на slave. **Пример:** Чтение из slave в Django: ``` DATABASES = { 'default': { # master 'ENGINE': 'django.db.backends.postgresql', 'HOST': 'master.db.example.com', }, 'replica': { # slave 'ENGINE': 'django.db.backends.postgresql', 'HOST': 'slave.db.example.com', } } # Ручное указание реплики для чтения users = User.objects.using('replica').filter(is_active=True) ``` Альтернативы: master-master (но сложнее в поддержке) или современные решения типа PostgreSQL с логической репликацией.