TGViewer
Go in Action Go in Action @go_in_action · 4.11K subscribers
Post #4673 747
Как мы в объектном хранилище отказы реплик обрабатываем

Когда мы работаем с реплицированными системами, вопрос стратегии переключения между репликами, а тем более ее реализация — это довольно значительная головная боль. Если вашей системе необходимо работать с отказами штатно, то наш опыт может подсказать пару новых идей, как можно сделать отказы контролируемыми.

Я Владислав Доронин — Go-разработчик в команде S3 облачной платформы Cloud.ru Evolition. Хочу рассказать про подход к управлению отказами реплик, который мы кристаллизовали опытом выхода из строя разных частей системы. Практика показала, что массовые и не очень отказы приводят к взлету задержки ответов и увеличению количества client-side повторов, которые тоже висят. Пускай на уровне записи из-за требований репликации и гарантии мы много поделать с ситуацией не можем (хотя и там не все безнадежно), то вот чтение гораздо более гибкое. У нас получилось сделать retry на чтении красивыми, об этом сегодня и поговорим.


Читать: https://habr.com/ru/companies/cloud_ru/articles/979412/

#ru

@go_in_action | Другие наши каналы
More from @go_in_action
  1. Sep 16, 2026Разница между Go-разработчиком с зарплатой в 100–200 тысяч и 500 тысяч не в количестве нап…
  2. Mar 31, 2026Улучшаем Dockerfile: от примитивной базы к multi-stage-решению Dockerfile можно составить…
  3. Mar 30, 2026Полнотекстовый поиск на Go без Elasticsearch: Bleve как альтернатива Когда в проекте возни…
  4. Mar 5, 2026Победителями премии Тпрогер 🐀становятся... Здесь играет барабанная дробь и интригующая му…
  5. Jan 27, 2026Я решил написать ухудшенный UUID по ничтожнейшим из причин Вчера я баловался с проектом AP…
  6. Jan 27, 2026Go рухнул с 7 на 16 место в TIOBE: пора ли российским компаниям пересмотреть технологическ…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →