Прошу простить меня, если я использую неправильную терминологию. Я попытался найти свой вопрос, но не совсем уверен, как сформулировать его в терминах, достаточно простых для поиска. я нашел эта почта и эта почта которые актуальны, но не отвечают на мои точные вопросы.
Для веб-сайтов, которым требуется большое количество серверов для его запуска, как хранится и управляется сам код приложения (пока без базы данных)? Для простоты предположим, что serverfault.com имеет 10 серверов. На всех 10 этих серверах есть один и тот же код, или определенные части кода будут разделены между разными серверами? Если все они имеют один и тот же код, какие инструменты используют администраторы, чтобы убедиться, что серверы содержат один и тот же код? Я могу представить, что если один сервер будет содержать другой код, могут случиться плохие вещи.
Теперь о базе данных ... Если у вас есть огромный объем данных в системе хранения на основе SQL, как это можно сделать? Разделяются ли сами таблицы по нескольким серверам или это будет что-то вроде того, что пользователи таблиц получают этот сервер, сообщения таблиц получают этот сервер и т. Д.? Как такой крупный гигант, как Facebook или Twitter, справляется с этим?
Я установил свой первый сервер с apache на Ubuntu на микро-экземпляре AWS. Есть ли какие-нибудь бесплатные инструменты, которые я могу попробовать сделать? Я нашел балансировщики нагрузки на AWS, но описания больше касаются их запуска, а не того, как сами данные хранятся и / или извлекаются.
Спасибо
Это называется балансировкой нагрузки. Балансировщик нагрузки перенаправляет запросы на несколько серверов, на которых загружен точно такой же код.
Что касается базы данных, это обычно делается с помощью репликации базы данных на несколько серверов и разделения данных на несколько баз данных. (например, «вещи Facebook» пользователя A хранятся на сервере БД A, пользователь B получает свои данные, хранящиеся на сервере B, и так далее)
Если вы хотите узнать больше, вот коллекция вещей для Facebook и их архитектуры: https://stackoverflow.com/questions/3533948/facebook-architecture
Итак, для вашего сценария: