За последние пару дней я разрабатывал сайт и проводил некоторые исследования по различным аспектам горизонтального масштабирования сайта.Если все пойдет по плану, через несколько месяцев (лет?) Я знаю, что мне нужно будет беспокоиться о масштабировании сайта вверх и вниз, поскольку ресурсы, которые он в итоге потребляет, будут огромными.
Итак,это заставило меня задуматься, когда лучше всего начать думать о масштабируемости и разрабатывать ее?Если вы начнете слишком рано, вы можете легко усложнить свой дизайн и сделать невозможным его создание.Вы также можете быть слишком увлечены деталями, архитектурой, чем угодно, и в итоге ничего не сделаете.Кроме того, если вы все же работаете, но сайт не запускается, возможно, вы потратили немало дополнительных усилий.
С другой стороны, вы могли бы сэкономить массу усилий в будущем.,Проектирование его с нуля, чтобы оно было большим, позже сделало бы его намного проще, с очень небольшим переписыванием.
Я знаю, над чем работаю, я решилсделайте хотя бы несколько вариантов на стороне масштабирования, но я не собираюсь полностью менять мышление, чтобы заставить его полностью масштабироваться.Примечательно, что я изменил свою базу данных с традиционного реляционного дизайна на аналогичный тому, который был предложен на сайте Reddit, который приведен ниже, и я собираюсь попробовать memcache.
Итак, основной вопрос, когда самое время начать думать или беспокоиться о масштабировании, и какие есть хорошие проекты, советы и т. Д. Для этого?
Несколько вещей, которые я читалДля тех, кому интересно:
http://www.codinghorror.com/blog/2009/06/scaling-up-vs-scaling-out-hidden-costs.html
http://highscalability.com/blog/2010/5/17/7-lessons-learned-while-building-reddit-to-270-million-page.html
http://developer.yahoo.com/performance/rules.html