Подтвердить что ты не робот

Когда люди говорят о масштабировании веб-сайта с помощью "осколков", что они означают?

Я слышал, как техника "осколка" упоминалась несколько раз в отношении решения проблем масштабирования для крупных веб-сайтов. Что это за техника "осколка" и почему она так хороша?

4b9b3361

Ответ 1

У Karl Seguin есть хороший блог о том, как оштрафовать.

Из сообщения:

Sharding - это разделение вашего данных на нескольких серверах. Как ты отделите свои данные до вас, но как правило, делается на некоторых фундаментальный идентификатор.

Ответ 2

Вкратце представьте, что вы разделите users_tbl на нескольких серверах. Таким образом, пользователи 1-5000 и на сервере 1, пользователи 5000-10000 на сервере 2; и т.д. Если ваша модель данных достаточно абстрактна в коде, это часто не приводит к огромному изменению кода.

Конечно, этот подход становится трудным, если все ваши запросы похожи на "SELECT COUNT (*) FROM users_tbl GROUP BY userType", но когда ваше место "WHERE userid = 5", тогда это имеет смысл.

Ответ 3

Поскольку "sharding" является частью принципов архитектуры для крупных веб-сайтов, вам может быть интересно слушать "Принципы архитектуры eBay с Randy Shoup" здесь.