Добрый день. Задам сперва вопрос тут, потому как вся инфра в

aws, затем поёду в часик девопсру если это тема для там.

Вот представьте есть некий проект.
Ну прям всё как обычно: Mysql/Postgresql(RDS), EKS, ALB, S3, Elasticache и короче вот все эти сервисы облаков.
Всё как в сказке.

Есть большая вероятность, что проект может вырасти и вылезть за пределы стартапа.
Условно говоря к нам придёт условный Pepsi co и нам надо будет многое изолировать для них отдельно.
Потенциальная задача - разделить все по разным регионам/базам.
Если со всякими s3/alb/EKS у меня вопросов нет, то как "делить" БД я не знаю.
Ну может там какие-то тенанты делать(?)
Или миграцию структуры и содержимого БД из одного существующего кластера в несколько БД по клиентам/регионам и разносить это руками/скриптом по разным регионам/БД.
Надеюсь донёс свою мысль).

Вопрос:
а где бы вот почитать о неком таком опыте внезапного роста с разделением по регионам/клиентам и самое главное - даёт ли сам амазон нечто подобное из фичей?
Хочется сперва задействовать от самой экосистемы, чтобы не выдумывать костыли.
Я нашёл лишь пару статей в интернетах, но это не совсем то, что надо.
Если кто что знает/видел/читал - буду рад ссылкам.

19 ответов

57 просмотров

Что значит "делить бд"? А кто и как этой базой пользуется то?

Alexandr-Kryuchkov Автор вопроса
Sebor▂▅▇█▓▒░
Что значит "делить бд"? А кто и как этой базой пол...

ну сейчас есть backend который живёт в кубере и подключается к бд клиенты сидят на фронте, который подключается к беку. если придёт большой крупны клиент надо это как то полностью отделить

Добро пожаловать! SaaS Tenant Isolation Strategies

Alexandr Kryuchkov
ну сейчас есть backend который живёт в кубере и по...

Это делается же на уровне приложений. Как ты хочешь данные делить между клиентами?

Alexandr-Kryuchkov Автор вопроса
Sebor▂▅▇█▓▒░
Это делается же на уровне приложений. Как ты хочеш...

я пока не понимаю, по мне так проще поднять всю инфру отдельно по терраформу и поменяь url для эдпойнта у нового клиента, но может быть это оверхед

Alexandr Kryuchkov
я пока не понимаю, по мне так проще поднять всю ин...

А как данные синкать потом? Или я не понимаю основной задачи

Alexandr-Kryuchkov Автор вопроса
Max Skutin
Добро пожаловать! SaaS Tenant Isolation Strategies

Весьма любопытно. Похоже это часть того что мне надо. Благодарю.

Alexandr-Kryuchkov Автор вопроса
Sebor▂▅▇█▓▒░
А как данные синкать потом? Или я не понимаю основ...

Пока не знаю, потому пришёл сюда, почитать то, что накидают 🙂

Alexandr Kryuchkov
Пока не знаю, потому пришёл сюда, почитать то, что...

Так первоначально не ясна вся задача целиком. И вводных данных не хватает

Alexandr-Kryuchkov Автор вопроса
Sebor▂▅▇█▓▒░
Так первоначально не ясна вся задача целиком. И вв...

Ну я соглашусь с тобой. Вот выше коллега скинул документ, который меня пока на данный момент устроил. Пойду с ним с руководству, когда спросят меня про мои мысли. Я сейчас про нему пробежался по диагонали, и это похоже на то, что мне надо. Даже в условиях текущих невнятных тз.

У клиента должна быть базовая модель базы с миграциями на отдельном инстансе, с новыми миграциями приходящими с релизами кмк По крайней мере для SaaS мы так проектировали

Oleg
У клиента должна быть базовая модель базы с миграц...

Подозреваю, что они инфру клиентам дают и ему надо продумать как клиентов ограничить друг от друга

Все базы очень разные. И для каждой куча бест практик) Если брать ваш пример с RDS (MySQl & Postgress) то можно изолировать клиентов на вскидку: 1) RDS кластер per client 2) database внутри кластера per client 3) schema внутри database per client 4) поле tenantId в каждой табличке 5) etc. В каждом случае будет отличаться способ работы с данными, уровень изоляции, механизм миграций и т.д. Разделение по регионам для чего именно? Для изоляции? Или для повышения отказоустойчивости? Или чтобы снизить летенси для клентов из разных стран? Вобщем лучше всего начать с формулировки конкретных требований к решению.

Alexandr Kryuchkov
ну сейчас есть backend который живёт в кубере и по...

Часто сталкивался с тем, что под крупных клиентов пилится свой о дельный акк и не один. Они скорее всего сами это запросят, если энтерпрайз

Alexandr-Kryuchkov Автор вопроса

Похожие вопросы

Обсуждают сегодня

Добрый вечер, Пока не совсем понимаю как наладить общение между телеграм ботом и ПО для работы с сим боксом. По самому боту так понял: - Нужен некий баланс, который можно поп...
Magic
6
Всем привет. Ребята, подскажите, пожалуйста. у ботов есть ограничение на отправку сообщений - 30 сообщений в секунду, эти ограничения накладываются на все сообщения? или на со...
Artem Stormageddon
2
Привет!) Кто как юзает переменные в строках?) Чисто ради интереса Вот так: echo "У меня {$bananasAmount} бананов"; Или вот так: echo "У меня ${bananasAmount} бананов";
Виталий
3
разработчик ботов скидывает портфолио, боты которые он уже создал. А вот как узнать что это именно он их создал?
Gosudar
4
а плаксы из-под питона умеют только в комфортных условиях что-то выдавить из себя?)
Lencore
9
Но, может, есть уже проверенная? Наши требования такие: 1. Сообщения должны приходить из Инста в CRM оду 2. Должна быть возможность подключить несколько экаунтов Инстаграм. Р...
Alexander Sharoiko MSE / Александр Шаройко
13
кто-нибудь уже пробовал это?
Lencore
4
Это может быть все-таки не флудвейт? у меня ботфазер принимает изменения и отображает даже что они изменились, на видео видно что он прислал якобы уже измененное описание, н...
OVERLINK
13
❓ Подскажите как сделать в группе телеги функцию (кнопку) пересылки сообщения где есть нарушение правил? Бот к каждому сообщению (по определенным ключам) добавляет снизу кнопк...
Alexander
4
Вопрос: Здравствуйте! У меня возникла проблема с использованием плагина Mall в OctoberCMS. Я использую все файлы и компоненты в их исходном виде, без изменений. Однако на стр...
𐩱𐩪𐩣𐩱𐩲𐩺𐩡
8
Карта сайта