Задать вопрос
IDONTSUDO
@IDONTSUDO
ЧСВ программистов идет в комплекте с первой IDE.

Распределенные приложения и пользовательские данные или как происходит горизонтальное масштабирование?

Как соц сети умудряются делать настолько распределенные системы. Я посмотрел видео про социальную сеть одноклассники с хайлоад++. И там было сказано что у них около 11 тысяч серверов, и трафик около 1/tbs.

Вернее вопрос в том какие методы балансировки пользовательских запросов, применяются в настолько громадных системах что бы еще не терялись данные пользователей? С самого я начала я подумал, что все делается через hash ip это было бы удобно и логично, но так как hash жестко привязан к IP(то есть балансирует в зависимости от IP), а моё IP может меняться. В этом нет никакого смысла, так как я могу через VPN из своего города стучаться на другой сервер, и получается если запрос на этом сервере окончится не удачей. То мне придется либо отказать пользователю в авторизации, либо искать данные в сотне других баз данных.

По сути, даже если мы возьмем какую нибудь Casandr`y которая умеет в распеределнность, мы все равно упремся в проблему пользовательской авторизации.
  • Вопрос задан
  • 330 просмотров
Подписаться 3 Простой 3 комментария
Решения вопроса 1
@vitaly_il1
DevOps Consulting
Вернее вопрос в том какие методы балансировки пользовательских запросов, применяются в настолько громадных системах что бы еще не терялись данные пользователей?

Распределенные приложения и пользовательские данные или как происходит горизонтальное масштабирование?

Короткий ответ - любой сервер имеет доступ к бэкенд базе данных которая содержит все данные. Как обеспечивается синхронизация/репликация базы по всему миру - отдельный интересный вопрос, кстати см. CAP теорему https://en.wikipedia.org/wiki/CAP_theorem.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@Germanjon
Прошу прощения, вас интересует решение конкретной задачи или общие теоретические материалы? Если общая теория, то это нужно долго читать и изучать
Ответ написан
@ProFfeSsoRr
Сис.админ по Linux
мы все равно упремся в проблему пользовательской авторизации
просто авторизовать миллион пользователей - это, грубо говоря, база с 1 таблицей и миллионом строк в ней. То бишь совсем ерунда.

либо искать данные в сотне других баз данных.
да не нужны сотни баз данных. Просто реплики, шардирование, и очень много думать головой на тему того, что, как и где хранить.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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