Когда хорошее время, чтобы начать думать о масштабировании? - PullRequest
5 голосов
/ 21 мая 2010

За последние пару дней я разрабатывал сайт и проводил некоторые исследования по различным аспектам горизонтального масштабирования сайта.Если все пойдет по плану, через несколько месяцев (лет?) Я знаю, что мне нужно будет беспокоиться о масштабировании сайта вверх и вниз, поскольку ресурсы, которые он в итоге потребляет, будут огромными.

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

С другой стороны, вы могли бы сэкономить массу усилий в будущем.,Проектирование его с нуля, чтобы оно было большим, позже сделало бы его намного проще, с очень небольшим переписыванием.

Я знаю, над чем работаю, я решилсделайте хотя бы несколько вариантов на стороне масштабирования, но я не собираюсь полностью менять мышление, чтобы заставить его полностью масштабироваться.Примечательно, что я изменил свою базу данных с традиционного реляционного дизайна на аналогичный тому, который был предложен на сайте 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

Ответы [ 2 ]

4 голосов
/ 21 мая 2010

С определенной точки зрения, методы масштабирования вполне приемлемы и консолидированы. Поэтому вместо того, чтобы полагаться на веб-ссылки / статьи, я бы прочитал книги по этой теме, прежде чем начинать исследование.

Я предлагаю:

1 голос
/ 21 мая 2010

Хорошо продуманная, разумная архитектура должна позволить вам масштабироваться позже, не требуя чрезмерных ресурсов для реализации. Об этом следует думать с самого начала проекта.

В настоящее время существуют очень хорошие архитектуры и шаблоны корпоративного проектирования, которые вы можете извлечь из (Rails, MVC, Spring и т. Д.), Которые позволяют разрабатывать программное обеспечение на устоявшейся и понятной основе, обеспечивающей необходимые механизмы для масштабирования. до.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...