2000 г
Масштабируемость
Еженедельник "Computerworld Россия", #26/2000
Стив Александер
Определение
Масштабируемость - это возможность увеличить вычислительную мощность Web-сайта или компьютерной системы (в частности, их способности выполнять больше операций или транзакций за определенный период времени) за счет установки большего числа процессоров или их замены на более мощные.
Бизнес начинается с конкретного набора требований к информационной системе. Однако с ростом компании растет важность вопроса о масштабируемости ее компьютерных систем.
Масштабируемость - вещь хорошая, поскольку означает, что вам не придется начинать с нуля и создавать абсолютно новую информационную систему с новым программным и аппаратным обеспечением. Если у вас есть масштабируемая система, то, скорее всего, вам удастся сохранить то же самое программное обеспечение, попросту нарастив аппаратную часть системы. В самой этой идее нет ничего нового, однако современные реалии, в частности, распространение электронной коммерции, изменили практику реализации - и отношение к ней - масштабируемых компьютерных систем.
Вглубь или вширь?
Два термина характеризуют две стратегии масштабирования: масштабирование вглубь или масштабирование вширь.
Масштабирование вглубь - это традиционный подход. Вместо небольшого сервера приобретается более крупный многопроцессорный сервер (или кластер серверов). Если этого недостаточно, возможно, понадобится мэйнфрейм или даже суперкомпьютер.
У этого подхода есть существенный недостаток - он требует неоправданно больших затрат времени и финансовых средств. В современной бизнес-среде, особенно в области электронной коммерции, долгосрочное планирование и итоговая эффективность могут оказаться менее приоритетными, нежели возможность быстро и с разумными затратами приступить к использованию нового приложения. Вследствие этого оказывается более предпочтительным иной подход, который относительно быстр и прост и предусматривает покупку набора недорогих стандартных серверных модулей.
Нельзя утверждать, что какой-либо из этих подходов изначально лучше другого: каждый имеет свои преимущества. И сегодня компании, занимающиеся электронной коммерцией, выбирают прагматические стратегии роста, которые предусматривают масштабирование как вглубь, так и вширь. По мере роста числа транзакций и количества посетителей узлов Web-серверы и серверы приложений масштабируются за счет добавления других небольших серверов, на которых работают многочисленные копии программного обеспечения.
В то же время крупные серверы баз данных масштабируются более медленно и обдуманно путем установки мощных многопроцессорных компьютеров, на которых работает одна копия программного обеспечения сервера баз данных.
Брайан Ричардсон, аналитик компании Meta Group, считает, что масштабирование вширь - наиболее приемлемый способ для Web-серверов и серверов приложений, поскольку нет необходимости, чтобы каждая транзакция обрабатывалась одной и той же копией приложения. Серверы баз данных, однако, лучше работают в том случае, когда используется один экземпляр приложения. Это предотвращает возникновение конфликтов при выполнении транзакций - к примеру, торговая компания не может обещать доставить товар, которого еще нет на складе.
Ричардсон считает, что "накопительный" подход к масштабированию Web-серверов и приложений с одно- или двухпроцессорными платформами не только прост, но и дешев.
"В данном случае важны не общая стоимость владения и вычислительная эффективность с точки зрения перспектив последующей обработки, - сказал он. - Здесь важнее скорость развертывания системы. Насколько быстро вы сможете приступить к использованию нового приложения? Насколько быстро вы сможете начать обрабатывать транзакции электронной коммерции со своими бизнес-партнерами? Как правило, общая стоимость владения играет второстепенную роль по сравнению с гибкостью и адаптируемостью решения. Нередко куда важнее легко и быстро установить небольшие серверы и сократить срок реализации проекта на полгода".
Время покупать
Уэйн Керночан, аналитик компании Aberdeen Group, согласен с этим мнением.
"Честно говоря, использование множества небольших серверов - это быстрый, но грубый подход, - отметил он. - Он применим с такими Web-приложениями, как электронная почта или служба каталогов, которые просто 'перебрасываются' на другой сервер... Такой подход имеет смысл, когда вы изо всех сил торопитесь начать работу, и отдаленное будущее вас не очень интересует".
Однако Дэвид Фридландер, аналитик компании Giga Information Group, уверен, что "именно за счет масштабирования вглубь, а не вширь вы сможете добиться, чтобы одному экземпляру приложения доставалось больше процессорных ресурсов. Если вы работаете с биржей ценных бумаг или обрабатываете тысячи финансовых транзакций в секунду, вам потребуется такое более мощное процессорное ядро".
"В случае с одним крупным сервером вам не нужно столько внимания уделять сети, так как она находится внутри системы и это намного упрощает администрирование, - добавил Керночан. - Это важно, поскольку наши исследования показывают, что административные затраты с течением времени перекрывают все остальные расходы".
Но с точки зрения краткосрочной перспективы расходы на приобретение, а не на поддержку сервера немаловажны для большинства компаний, работающих в области электронной коммерции. Цены на серверы варьируются в весьма широком диапазоне, но восьмипроцессорный компьютер может обойтись компании в два раза дороже, чем двухпроцессорный. Так или иначе, соотношение цен не в пользу более крупного компьютера до тех пор, пока дело ограничивается четырьмя процессорами или пока база данных не станет очень большой.
Стоит помнить о том, что операционные системы могут по-разному поддерживать различные подходы к масштабированию. Так, теоретически операционная система Windows 2000 Datacenter Server, которую готовит к выпуску корпорация Microsoft, в состоянии сделать масштабирование вглубь более приемлемым и более эффективным, нежели масштабирование вширь. Datacenter дает возможность пользователям начать с небольшого сервера и добавлять в систему вплоть до 32 процессоров. Но, по мнению Ричардсона, масштабирование в таком стиле, скорее всего, в конечном итоге обойдется компании дороже, чем масштабирование за счет приобретения небольших серверов.
В свете продолжающегося быстрого роста оборотов электронной коммерции весьма вероятно, что каждая стратегия, будь то масштабирование вглубь или вширь, по-прежнему будет находить своих сторонников.