Несколько серверов, работающих с одной базой данных MySQL - PullRequest
0 голосов
/ 11 декабря 2010

Я думаю о большом проекте, который потребует большой нагрузки на ресурсы и пропускную способность.Он должен работать с огромной базой данных MySQL на различных веб-страницах (возможно, около 20 миллионов, я надеюсь, что MySQL сможет обработать такое количество записей).Но мне нужно разделить запросы к базе данных между несколькими серверами, потому что один сервер не сможет справиться с такой нагрузкой.Интересно, как большие проекты, такие как Google или Archive.org делают это?Я подумал о примитивном методе, который выглядит следующим образом:

  1. База данных MySQL расположена на независимом автономном сервере.
  2. Таблица базы данных MySQL содержит поле, скажем, «сервер»с определенным именем сервера, для которого запись выделена для обработки.
  3. Каждый сервер подключается к серверу MySQL и работает ТОЛЬКО с записями, которые выделены этому серверу (просматривая поле «сервер» в этой таблице).

Мне кажется, что это метод noob, но я хотел бы узнать ваше мнение и, возможно, способы, которыми вы видите, как это можно реализовать в более оптимизированной и умной форме.

Буду рад любому совету.

Спасибо, Деннис.

1 Ответ

1 голос
/ 11 декабря 2010

(может быть, около 20 миллионов, я надеюсь, MySQL сможет обработать такое количество записей)

20M записей почти ничего не значит для базы данных.Все дело в том, как вы используете базу данных, как написать свой SQL, свою модель данных и т. Д. И т. Д. Не беспокойтесь о 20M записях, это вообще не будет проблемой.

...