Главная > веб-обзоры, Высокопроизводительная архитектура, Разное, Стартапы > Верхом на облаке в 21 век. Статья для журнала Хакер.

Верхом на облаке в 21 век. Статья для журнала Хакер.

3 августа 2009

cloud_5B1_5DСтатья написана специально для журнала Хакер и опубликована на сайте журнала (в несколько сокращенной и отредактированной версии). Ниже я публикую свой оригинальный вариант,  без правок или ограничения на объем материала.

У известного фантаста Р. Шекли есть прикольный рассказ «Абсолютное оружие» о том, как искали и нашли оружие древних марсианских цивилизаций. И самым мощным, абсолютным оружием, оказалось обычное облако... Похоже, ИТ очень схоже с древними марсианами, потому что сейчас все, что связано с Cloud Computing, преподносится как абсолютное решение всех проблем... но ты спросишь, а что это такое вообще? А я отвечу!

Что это такое?

Как и все современные термины в ИТ, «облачные вычисления» имеют настолько размытый и общий смысл, что даже странно, как можно понять, о чем же говорит твой собеседник. Кое-кто даже утверждает, что это не более, чем маркетинговый термин, пустышка и фигня. Не верь! Давай расставим все по местах. Cloud Computing или облако, основано на нескольких основных моментах, о которых я сейчас расскажу.

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

Второе – виртуализация, это основа основ всех вычислительных систем. Без этого появление облаков было бы почти невозможным. Рассказывать, что это такое тебе, наверное, уже не нужно (вставить ссылку на статью в предыдущих номерах, была, помню). Благодаря виртуализации пользователи вряд ли когда-то задумаются о том, что где-то там нужен еще один сервер, апгрейд процессора или расширение дискового пространства – все это сокрыто за стенами виртуальных машин, которые работают на сотнях, если не тысячах серверов (а часто еще и в нескольких датацентрах).

Третье – «все – услуга». Это уже с области маркетинга, но не менее важно, чем сугубо железные моменты. Помнишь время, когда за машинное время в ВЦ приходилось платить и ожидать свободного часа? Все новое, это забытое старое, потому облачные системы гораздо ближе к своим дальним родственникам из ВЦ 60-х годов. Все услуги в облаке учитываются и оплачиваются отдельно, обычно почасово, при этом появляется разрекламированная возможность получить столько ресурсов сервера, сколько тебе необходимо (читай – столько, сколько денег есть). Облако для пользователя – это некоторый набор услуг, которые потребляются и оплачиваются, без иногда даже понятия, что же там внутри. Например – хранение 1Гб данных и доступ к ним через HTPP/REST API. Никто не знает, да и это не интересно, как и где эти данные хранятся, что за диски там стоят, RAID и прочая муть. Есть объем данных, есть стандартный и простой интерфейс и цена. Когда тебе надо что-то, это будет предоставлено мгновенно и в запрошенном объеме, никто не скажет, что на сервере закончилось место или туда нельзя вставить ещё один процессор (а это уже следствие виртуализации). Особо продвинутые продают уже сразу настроенные нужные тебе приложения.

Четвертое – как ни странно, простота. Да-да, хотя облачность и стоит на переднем крае компьютерных технологий, одно из важнейших ее свойство это простота и стандартность. Здесь никаких тебе новых языков, сложных конфигурирований и часовых сидений в терминале для поднятия почтового сервиса. Обычно все, что предлагается внутри облака доступно через самые простые вызовы API и протоколы. Самую большую популярность завоевал HTTP REST протокол, когда все операции над данными производятся через обычные HTTP запросы, однако могут применяться и другие решения, а также уже готовые плагины и библиотеки для различных языков программирования.

И так, теперь ты знаешь всех китов, на которых покоится облака, в лицо: доступность через интернет посредством простейших протоколов и стандартов, виртуализация и предоставление всех ресурсов как сервиса, по запросу. Из этого неявно, но обязательно выходят следующие преимущества и сильные стороны Clouda (да-да, в чем же сила, брат?). Высокая доступность, то есть, uptime большинства коммерческих систем гарантируется на уровне трех-пяти девяток, что означает не больше пары минут-часа простоя в год. Второй сильный момент, ради которого все это и затевалось – масштабируемость. Если в обычных хостингах ты просто не можешь физически прыгнуть выше головы, то есть того, что даст тебе админ и просто выше конкретного сервера, то в облаке ты никак не ограничен, ведь ресурсы предоставляются по запросу. И если твой скрипт взлома паролей потребует вдруг для расчета еще пару процессоров и гигабайт памяти (да, подружка тоже читала наш журнал и закрыла свои фотки паролем), то это совершенно не проблема. При этом не надо ничего запасать впрок, ведь любые ресурсы будут доступны сразу. Так что спокойно можно создавать убийцу Гугла, пока им будут пользоваться только твои друзья, спи спокойно, если завтра ты станешь суперпопулярным – тоже ничего менять не придется, только успевай пополнять счет в банке.  Говорят, Cloud Computing популярен у всяких стартапов и молодых компаний, ведь у них, как обычно, денег особо нет, а так они получают все, что им надо, уже и сейчас, да еще и дешево, а если завтра у них вышло сделать что-то реальное, можно не парится по поводу закупки новых серверов.

Не боимся умных терминов.

Тебе интересно, что означают различные современные термины? Рассказываю:

Все, что касается облачных технологий, в мире принято называть словом aaS (aaS, а не то, что ты подумал). Расшифровывается просто – as a Service, что есть «как сервис» или «в виде сервиса». Основной смысл вкладывается в первую часть термина:

SaaSSoftware-aaS, или приложения в виде сервисов, когда тебе предлагают использовать какое-то конкретное ПО, например, корпоративные системы, в виде сервиса по подписке, часто доступного просто в браузере. Пользуешься Google Docs? Это и есть SaaS, только бесплатный.

PaaSPlatform-aaS, больше для разработчиков (дабы не путать с SaaS, который больше для конечного пользователя), когда в облаке функционирует некоторый набор программ и основных сервисов, библиотек, на основе которых предлагается разрабатывать свои приложения. Часто под этим понимают и какие-то отдельные части, вроде системы базы данных или коммуникаций.

HaaSHardware-aaS, один из первых терминов, означающий предоставление некоторых базовых «железных» функций и ресурсов как сервис. При этом не идет речь о прямой аренде, например, как обычный хостинг. Обычно ресурсы сначала виртуализируются, а потом уже делятся и сдаются в аренду. Например, хранение данных, по сути, сдача в аренду места на жестком диске, или аренда вычислительных мощностей.  При этом редко когда речь идет о конкретном железе, большей частью – о некоторых абстрактных сущностях, аналогичных реальным железным (место под хранение, процессорное время в эквиваленте какого-либо реального CPU, пропускная способность).

IaaSInfrastructure-aaS, когда в виде услуги предоставляются некоторые основные, базовые компоненты вычислительных систем, тем не менее, достаточно высокоуровневые. Обычно считается, что термин пришел на смену HaaS, подняв его на новый уровень.  Для примера, системы виртуализации, балансировщики нагрузки и т.п. системы, лежащие в основе для построения других систем.

СaaSCommunication-aaS, когда в виде сервисов предоставляются услуги связи, обычно это IP-телефония, почта и мгновенные коммуникации (чаты, IM).

А также...

Grid Computing или решеточные вычисления, еще один термин, как бы предок облаков. Но он предназначен совсем для другого, Grid – это некоторая вычислительная сеть и принципы ее построения, для обработки очень большого количества данных. При этом сеть часто может быть закрытой и никак не связанной с остальным миром, в ней могут применяться закрытые протоколы и специальные компоненты. По сути то, это системы-числодробилки, например, для нужд ученых (самая большая такая сеть построена для CERN-а и обслуживает Большой Адронный коллайдер).

VDS/VPS – это уже не просто хостинг, но еще никак не Cloud. Конечно, у типичного предложения VDS (Virtual Dedicated server) есть большинство атрибутов облака. Тебе дают виртуализированную среду, где можно разворачивать свои приложения или даже ОС, объем ресурсов также ограничивается только твоим кошельком. Но на этом сходства и заканчиваются – ресурсы такого сервера ограничены возможностями железного сервера, на котором крутится все дело, платишь ты тоже помесячно, а если вдруг каждую пятницу вечером тебе надо быстро расширить сервер для приема толпы посетителей, это никак не получится (либо готовь ящик коньяка админам, если знакомые).

Какого цвета облака?

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

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

Первым уровнем для Cloud-а будет предоставление виртуализированной среды на базе некоторых стандартных «юнитов», которые по ресурсам могут равняться на определенные реальные железные сервера. Фактически, тебе выдается виртуальная машина, которая работает на системах провайдера, а внутри нее ты имеешь все возможности для установки сначала любой ОС (из поддерживаемых, конечно), а потом уже настройки и установки необходимого ПО. Ограничения такой машины, как мы уже говорили, выражаются в некоторых приближениях к реальному железу, но, в отличие от VDS наших провайдеров, могут быть гибко и почти мгновенно изменены в большую или меньшую сторону. Также разрешено на один аккаунт поднимать несколько таких виртуальных сервера, соответственно, можно создать между ними свою сеть. Ты все равно не знаешь, что ниже уровнем, чем слой виртуализации (наиболее часто используется Xen или VMware), но дальше ты можешь делать все, что захочется.

amazon_ec2

Врезка или немного о Amazon: самый известный представитель такого рода облачных вычислений – Amazon EC2, что расшифровывается как Elastic Compute Cloud. Пока это самый доступный и надежный вариант на рынке, однако, учитывайте, что вам придется платить за все ресурсы (передаваемые данные, процессорное время, хранение данных), а возможности расширения каждого конкретного сервера все же ограничены. Также в реальной работе надо учитывать множество нюансов, например, что при выключении виртуальная машина (инстанс) не сохраняет данные и теряет свой IP-адрес.

Amazon один из самый больших и масштабных игроков на рынке облачных систем. Его сервисами пользуются огромное множество компаний, в основном, почти все стартапы, например, нашумевший Twitter решил проблему масштабирования именно при помощи Amazon EC2. Все облачные услуги от Amazon предоставляются под общим брендом Web Services и включают, кроме EC2: SimpleDB – сервис базы данных с простым интерфейсом и SQL-подобными возможностями, Simple Storage Service или S3 для хранения больших объемов данных и REST-API для доступа, CloudFront – распределенная сеть хранения и доставки контента, Simple Queue Service – система очередей сообщений для создания распределенных приложений, Elastic MapReduce – система обработки и анализа больших объемов данных на базе открытой Apache Hadoop.

Расширение ресурсов может быть также разным – самый простой вариант, когда тебя не ограничивают в количестве таких виртуальных серверов, однако их параметры выбираются из нескольких типовых планов. Пример – Amazon EC2, когда ты выбираешь из пяти различных типов инстансов. Здесь есть определенное облегчение для провайдера, однако тебе такой подход может добавить сложностей, если приложение не умеет себя масштабировать и добавлять новые сервера на лету.

Второй и самый «облачный» вариант, когда, по большому счету, есть регулятор вроде громкости, которым можно регулировать выделение некоторых ресурсов твоему серверу. Надо 12 Гб оперативки – передвинул и через несколько секунд ресурсы сервера стали больше. К сожалению, такой путь самый сложный и очень сильно зависит от прогресса в области виртуализации, ведь ясно, что никакой один физический сервер не сможет до бесконечности наращиваться. Поэтому на виртуализацию ложится функция сначала объединения нескольких или всех серверов в одну гигантскую супермашину, а потом прецизионное разделение ресурсов между всеми клиентами по их запросу.

Отсюда давай перейдем на противоположную сторону – облака третьего типа обладают максимальной гибкостью и расширяемостью, но это оборачивается предоставлением не просто виртуальной машины или некоторых ресурсов, а целых библиотеки и API. Тебе дают возможность запускать собственные приложения, часто серьезно ограничивая в выборе языка и дополнительных библиотек, зато такое приложение сможет реализовать ту самую заветную мечту всех облаков и гибко получать ресурсы по запросу. Здесь ты не видишь ограничений виртуальной машины, более того, даже не подозреваешь о ее существовании, ведь все, с чем работает твоя программа – вызовы API и библиотек, предоставленных сервисом. Казалось бы, в столь тесных условиях, разве можно что-то сделать? Можно, да еще и как!

Вообще-то, такой степень абстракции и облачности это как раз самый последний тренд и мода в ИТ. С развитием технологий появилась возможность так сокрыть за слоем виртуализации и промежуточных библиотек, что программисту реальных приложений совсем не надо думать о том, какой же там сервер под этим крутится. Подумай, ведь все основные языки современности давно уже исполняются на собственных виртуальных машинах, так что разработчики давно оторвались от железа и возвращаться не очень-то и хотят. Если инфраструктура такого облака хорошо спроектирована, а язык выбран правильно, то можно достаточно просто сделать так, что большинство (заметь, не все) программ смогут работать и масштабироваться практически линейно. При этом разработчик и пользователь ничего не будет знать о том, как ты внутри запускаешь ее на десятке виртуальных серверов, каждый из которых работает на паре реальных.

Более того, именно развитие cloud-систем первого вида, когда тебе дают просто виртуальные машинки разных размеров, привел к расцвету таких облаков, так как они часто являются основной для них. Умные люди делают стартап, который имеет одну технологию, но сильную – умеет запускать ту же Java VM на нескольких серверах (допустим, неограниченно) и запускать приложения прозрачно используя ресурсы. Не смотри, что это очень схоже с реальными системами типа Terracota, у нее свои ограничения и сложности. Логично предположить, что эти ребята (если повезло, ты можешь быть среди их) никак не будут покупать сразу сотни серверов и арендовать стойки в дата-центре по космическим ценам. Они просто арендуют у Amazon несколько их виртуальных серверов и запустят свое детище, предоставив возможность разработчикам двигать тот самый регулятор памяти, или даже без него вообще, просто приложения будут потреблять столько, сколько нужно и сколько вы заплатили.

Описанная ситуация совершенно типичная для многих стартапов в этой области. Потому термины вроде SaaS/PaaS/IaaS достаточно размытые, ведь часто одни системы строятся на основе других. Появление первого серьезного и доступного cloud-хостинга от Amazon-а породило, по сути, целую индустрию, сделав возможным и доступным простым людям самых продвинутых технологий в виде тривиально простых систем.

Кстати, существует самая прямая зависимость – чем проще язык и API, в рамках которых работают программы, тем легче и гибче их можно масштабировать. А плавное и, желательно, бесконечное наращивание мощности это, пожалуй, самое главное для облаков. Именно поэтому редко когда в таких сервисах можно встретить обычные для веб-разработчиков ресурсы, по крайней мере в их привычном виде. Первым делом упразднили базы данных, ведь традиционные SQL реляционные СУБД очень плохо подходят для высокомасштабируемых систем (за редким исключением вроде Oracle или DB2). Здесь используют или собственные разработки, почти всегда исключительно интересные в техническом плане, или сторонние открытые решения. В частности, самым популярным решением являются key-value хранилища данных и  системы на базе Google BigTable и его открытых аналогов. Если кратко, то это очень похоже на обычный кеш – любые данные приложение записывает в хранилище, ассоциируя их с некоторым ключем, цифровым или простой строкой, потом извлекает или удаляет, указывая ключ. Более продвинутые системы реализуют целые структуры данных, списки, очереди и допускают даже приближенные к SQL выборки с сортировкой и фильтрами.

Часто и файловая система заменена неким подобием такого хранилища, дополненного системой map/reduce для обработки больших объемов данных. Все это требует часто серьезного пересмотра всей архитектуры приложений, если ты хочешь, чтобы оно работало в условиях облака да еще и использовало все преимущества. Поначалу очень непривычно отойти от традиций и понять, что нет обычной базы и таблиц (особенно, если ты раньше только на РНР и MySQL писал), но если перестроиться, то возможности открываются просто безграничные.

google_appengine_dashboard

Самой известной системой такого рода является Google AppEngine, который предоставляет некую «песочницу», ограниченную вполне конкретным API и системными сервисами. Песочница ограничена несколькими языками, сейчас это Python и Java, однако ресурсные ограничения достаточно либеральные, чтобы вы еще долго не думали о них (заявлено, что сервис доступен бесплатно для сайтов, имеющих до 5 миллионов хитов в месяц, более точные ограничения смотрите в документации). Сервис заявлен как бета, поэтому только недавно стало возможным зарегистрироваться всем желающим. Цены на сервис для коммерческого использования или тех, кому мало лимитов, либеральные и сравнимы с конкурентами (как обычно – почасовая оплата или некоторых абстрактных единиц ресурсов).

azure_service_platform

Как ни странно, такой же сервис выпустила другая «империя зла»  - Microsoft Azure. В основе лежит специальная версия Windows Server 2008, остальные сервисы, доступные разработчику, базируются на уже зарекомендовавших себя технологиях - .NET Runtime, SQL Service, Live, SharePoint, Dynamics CRM. Приложения имеют доступ ко всем сервисам посредством абстрагированного от деталей API, через HTTP, REST, SOAP. Судя по включению в cloud типичных бизнес-платформ, система будет в основном ориентирована на построение корпоративных приложений и сервисов. Пока идет тестирование, поэтому можно получить совершенно бесплатный доступ ко всем материалам.

Кстати! Самые популярные языки программирования в облачных системах: Java, Python, JavaScript, Ruby, C#, и с некоторыми ограничениями, почти все языки, которые могут работать поверх JVM.

abicloud

И, наконец, некоторые промежуточные системы, облака второго типа, с одной стороны, предоставляют набор обычных для веб-разработчика сервисов, с другой – это все тот же вычислительный блок в облаке, обладающий гибкостью и надежностью. Обычно доступно динамическое изменение параметров такого сервера, самые продвинутые провайдеры дают это делать просто в реальном времени, тарифицируя ресурсы по времени использования. Но не надейтесь, что такое облако вам даст суперкомпьютер с сотней Гб памяти – в предельном варианте один виртуальный облачный сервер ограничен физическим сервером, поэтому я не видел предложений больше 16Гб памяти, процессор обычно более масштабируемый. То есть, по большому счету, это очень продвинутый и гибкий VDS, который для администратора выглядит как обычный хостинг.

mosso_rackable_cloud_server

На рынке работают такие компании, как Mosso.com, дающая как облачные сервера, так и другие сервисы, вроде файлового хранилища или обычного, но высоконадежного хостинга. Также отметим Apatana Cloud, от разработчиков лучшей в мире IDE, Stax.net, если вам надо только масштабируемый хостинг Java-приложения или Engine Yard для Ruby-разработчиков.

engine_yard

Разработчики так называемых web-OS часто теперь себя позиционируют как облака, хотя они просто предоставляют некоторые приложение (SaaS модель), просто это не обычный, скажем, текстовый редактор, а целое семейство приложений, объединенных в общий, схожий с настольными ОС интерфейс,. Такой виртуальный десктоп доступен всегда и везде, лишь бы был браузер. Обычно, вебОС работают на базе AJAX-технологий или Flash. Среди интересных систем я бы отметил Cloudo (www.cloudo.com), eyeOS (eyeos.org, также доступна как OpenSource) и Jooce (jooce.com).

eyaos_site

Краткий обзор 25 различных веб-ОС: http://habrahabr.ru/blogs/os/10952/

Что же мне стоит облако построить?

Врезка: Если хочешь разрабатывать серьезные приложения и знаешь Java, попробуй GridGain (www.gridgain.com), это один из мощнейших инструментов для создания приложений, идеально работающих в облаках.

Не думай, что облачные штучки доступны только тем, у кого много денег. Хотя ты прав, так как почти все из компаний не предлагают ничего бесплатно, и даже попользовавшись хоть бы час, тебе уже придется платить. Есть приятные исключения, вроде Aptana Cloud, где можно бесплатно в течении 30 дней пользоваться самой маленькой виртуальной машинкой. Но если тебе уже не терпится что-то попробовать разобрать своими руками, я расскажу о парочке проектов, которые позволят бесплатно, то есть даром, создать в домашних условиях аналоги Google AppEngine и Amazon EC2.

grid_gain_java_platform

Мы сами с...

Как ты помнишь, AppEngine это такая среда для исполнения программ (на Python-е), где твой скрипт работает внутри облака в специальной песочнице и взаимодействует с миром через API, при этом ресурсы для него выделяются динамически и очень гибко. Это идеально подходит для различных как исследовательских проектов, так и для быстрого построения веб-приложений, тогда точно можно не бояться перегрузок и digg-эффекта. Открытая реализация называется AppScale и на ней можно запускать такие самые программы, как и в оригинальной Google-поделке. Если у тебя есть мощный компьютер, ты можешь развернуть такую систему на нескольких виртуальных машинах, имитируя кластер, или же просто одолжи у друзей несколько системников и собери кластер в отдельно взятой комнате. AppScale поставляется в виде уже настроенного образа Linux-системы, который ставиться или на виртуальную машину Xen, или на буржуйском Amazon EC2, а для самых умных – работает на основе открытого аналога, Eucalyptus, о котором ниже. Учитывай, что надо как минимум 4 сервера, а значит компьютер должен быть мощным, очень желательно 64-битным и побольше памяти, ведь 4 Xen-а будут ее жрать очень сильно. Детальная инструкция по установке и запуску достаточно объемная, поэтому читай ее на официальном сайте - http://code.google.com/p/appscale/wiki/Deploying_AppScale_via_Xen Если получится, у тебя будет свое собственное облако, где можно экспериментировать с различными программами на питоне, которые потом, если очень хочешь, можно перенести и на Google, они должны работать совершенно одинаково, несмотря на то, что AppScale опирается на открытые аналоги гугловских технологий, поэтому не факт, что внутри все работает точно так же.

Но ведь питон это для нубов, а ты хочешь попробовать что-то более серьезное и мощное? Можно попытаться построить облачный хостинг виртуальных машин, такой же как у Amazon EC2, в котором ты и друзья могут инсталлировать свои собственные операционные системы и творить там что угодно. Для этого используется другая открытая разработка – EUCALYPTUS, что совсем не дерево, а Elastic Utility Computing Architecture for Linking Your Programs To Useful Systems.

enomalysm_layer2

Если короче, это такая промежуточная среда, которая работает на множестве компьютеров (кластере), а с другой стороны, предоставляет через веб и консоль возможность загрузить собственный образ виртуальной машины и управлять им, получая таким образом тот самый Amazon, только бесплатно. Говорят, что даже утилиты и API стырено аналогично амазоновскому, поэтому потренироваться сначала можно на ней, а потом уже перейти на амазон, если не страшно выбрасывать столько денег. Кстати, тот самый AppScale отлично работает поверх Eucalyptus-а, избавляя тебя от необходимости что-то там химичить с Xen и образами, просто взял и запустил.

А что, если  ты серьезный чел и имеешь крутую работу, где одновременно надо управлять множеством виртуальных машин, формируя из них одно или несколько облак, попробуй еще одну открытую разработку – Enomalysm (www.enomaly.com). Это платформа, позволяющая объединить как коммерческие виртуальные машины (VMware, KVM, Xen и другие), так и облачные системы типа Amazon EC2 в один большой виртуальный датацентр, управляемый одной веб-консолью. Доступ к платформе из твоих приложений очень простой, основанный на стандартных протоколах XMPP, REST, JSON.

Ну что, прощаемся?

Вот и сказочке конец... То есть, ты понял, что облачные системы, это средство для получения некоторой среды, в которой могут работать как обычные виртуальные машины с пользовательскими ОС, так и целые платформы для исполнения приложений. Самым главным преимуществом Cloud-а является независимость от аппаратного обеспечения и гибкая масштабированность, хотя в этом направлении еще много чего можно сделать. Обычно в облаках размещаются молодые проекты, которые еще фиг знает, выстрелят или нет. Поэтому лучше всего оплачивать все ресурсы (CPU, за каждый гигабайт трафика, за место в хранилище) почасово, в отличие от обычного хостинга, где сразу за месяц надо отдать все деньги. Вторым преимуществом такого хостинга является SLA, по-человечески – уровень предоставления сервиса обычно намного выше, чем у стандартных хостингах, облако предлагает уровень надежность в 99,999, так что отказ любой из систем или даже всего сервера/стойки никак не уронит твой сайт.

Если не хочется заморачиваться с установкой операционной системы, виртуализацией и прочими сисадминскими деталями, выбирай облачные системы, предоставляющие сразу платформу на твоем любимом языке (выбор обычно или Java или Python). Ты будешь ограничен заранее заданным API, часто не будет хватать обычных сервисов и приложений, в первую очередь SQL базы данных, но когда привыкнешь, сможешь делать приложения, которые выдержат миллионы хитов, а сломать его хрен кто сможет! Облачные системы обычно гораздо лучше защищены, да и до конечной ОС тяжело добраться, ведь там может быть несколько уровней виртуализации, мониторинга и систем безопасности. Но ведь попробовать можно...


  1. 3 августа 2009 в 05:07 | #1

    А коллайдер-то АДРОННЫЙ…

  2. 22 сентября 2009 в 17:27 | #3

    Дякую за корисну статтю. Сподобалась широта описання існуючих рішень.

Комментирование отключено.
Developers.org.ua