Облачные вычисления: научитесь автоматически масштабировать сервер вверх/вниз

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

Как я могу изменить свою парадигму и научиться писать свои приложения таким образом? Написать один раз и забыть (независимо от будущей нагрузки) было бы лучшим решением.

Как я могу практиковать свои навыки в этой области? Настроить среду виртуализации, когда я смогу добавить другие виртуальные машины в частное облако (через командную строку?) по каким-то умным алгоритмам, чтобы предвидеть нагрузку на какой-то период времени?

В идеале я хочу попрактиковаться, не покупая реальные услуги облачных вычислений, а только на своем оборудовании.

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


person Nikita Fedyashev    schedule 06.06.2010    source источник
comment
Используйте виртуальную машину с открытым исходным кодом, например virtualbox.org.   -  person Romain Hippeau    schedule 06.06.2010
comment
спасибо, я попробую. Но это очень незначительная проблема моего вопроса.   -  person Nikita Fedyashev    schedule 06.06.2010


Ответы (2)


Один из вариантов, который я упомяну, — это использование собственного облачного фреймворка. Вы можете посмотреть на платформу CloudIQ. Одним из компонентов является CloudIQ Engine. Он позволяет разрабатывать собственные облачные приложения на C/C++, Java и .NET. Вы получаете возможности масштабирования, просто добавляя работников в свое облако. Платформа автоматически распределяет ваши приложения на новые компьютеры и после установки начинает отправлять им работу по мере поступления запросов. Таким образом, облако решает вашу проблему с очередями за вас.

Перейдите по ссылкам «Загрузка» и «Сообщество» для получения дополнительной информации.

person Brett McCann    schedule 06.07.2010

Вы должны попробовать AWS-Amazon, предлагающий бесплатный уровень, который дает вам хранилище, обмен сообщениями и микроэкземпляры (только Linux). вы можете начать разрабатывать небольшие пробные версии бесплатно. Написать масштабируемое приложение не так уж сложно — попробуйте разбить поток на небольшие параллельные задачи. клиент-серверные приложения еще проще — используйте балансировщик нагрузки, чтобы поднимать/выключать серверы по требованию.

person iGili    schedule 03.09.2012