Развитие на облак: 9 неща, които трябва да знаете, преди да влезете

Разработването и тестването на приложения в облака набира популярност, тъй като все повече бизнеси стартират публични и частни инициативи за изчислителни облаци. Разработката в облак обикновено включва интегрирани среди за разработка, компоненти за управление на жизнения цикъл на приложения (като управление на тестове и качество, управление на изходния код и конфигурация, инструменти за непрекъсната доставка) и компоненти за тестване на сигурността на приложенията.

Въпреки че технологичните мениджъри и разработчици с опит в облачно-базираното развитие казват, че развитието в тези среди има явни ползи - като спестяване на разходи и повишена скорост на пазара - те също така предупреждават, че има предизвикателства и изненади, за които трябва да се внимава.

[Вземете безсмислените обяснения и съвети, които са ви необходими, за да се възползвате реално от облачните изчисления, в специалния отчет на редакторите за 21 страници в Cloud Computing Deep Dive. | Останете в облака с информационния бюлетин на Cloud Computing Report. ]

Не е ясно колко често може да стане развитието в облака. Но индустриалният анализ показва, че той се увеличава. В изследователска бележка от февруари 2011 г. Gartner заяви, че клиентите, присъствали на симпозиумите на фирмата през 2010 г., са изразили "рязко повишен интерес" към изчислителните облаци, за да подобрят развитието и поддръжката на съществуващите уеб приложения.

„Най-много го виждам в прототипирането и паралелното развитие на клонове, но има и огромен ръст в пространството за тестване на натоварване и производителност“, казва Ерик Книп, главен анализатор в Gartner.

Ако искате да се впуснете в разработването на облак за първи път, ето девет вида препятствия, с които може да се сблъскате, и предложения как да се справите с тях от разработчиците, които действително са свършили работата.

Развитие на облака 1: Облакът не винаги работи като "реалния свят"

Разработчиците може да открият, че конфигурацията, която използват в производството, е трудна за възпроизвеждане в облачни услуги. Например, с приложение, което разработвате в облака, преди да го върнете, за да стартирате локално, може да се наложи да тествате срещу наследена система, която не можете просто да копирате в облачна услуга, Knipp казва: "Това означава, че може да има много още неща, които разработчиците трябва да изхвърлят, за да стартират и стартират тестово приложение. "

Технологията за виртуализация на услуги може да помогне, казва Knipp, а разработчиците могат да се възползват от пазарните предложения, които дават възможност за развитие на множество / паралелни клонове. Вземете случая с iTKO, който предлага софтуерен пакет, наречен Lisa, който помага на компаниите да преместят корпоративни приложения в облака.

Разработчиците, свикнали с необлачно развитие, също могат да срещнат изненади, когато става въпрос за изграждане на уеб приложения в облака. Например Грег Тейлър, който създаде онлайн заявление за регистрация за Асоциацията за музикално образование в Охайо, не очакваше, че ще се нуждае от такова задълбочено разбиране на структурата на базата данни и как потребителите ще взаимодействат с нея, когато той създаде приложението.

Приложението, което обработва регистрацията на изпълнители на училищна музика в общодържавно музикално съдържание, използва MySQL база данни като заден край и Alpha Five 10.5 от Alpha Software за предния край. „Идвам от фон на FileMaker Pro [и], че продуктът е изключително опрощаващ по отношение на структурата на базата данни“, казва Тейлър. „Лошият дизайн все още може да се използва с разумен успех.“

Но развитието с MySQL принуди Тейлър да бъде изключително организиран, така че уеб приложението да има възможно най-добрата производителност. Връщането към структурата на таблицата за добавяне на повече полета отнема много време, тъй като включва ротация между различни инструменти за разработка, Navicat за MySQL и Alpha Five за действителния дизайн на уеб страница, казва той. Първият инструмент създава структурата на базата данни, докато вторият създава страниците, с които потребителят взаимодейства, за да въведе и редактира информация в базата данни.

„Това може да не е проблем за разработчиците, използващи база данни, която вече е създадена“, казва Тейлър. "Те просто щяха да използват Alpha Five, за да разработят уеб страниците, до които даден потребител ще има достъп. В моя случай едновременно разработвах както базата данни, така и уеб страниците, което щеше да изисква от мен да превключвам между инструментите за разработка, ако не бях планирал внимателно. "

За да избегне това непрекъснато заобикаляне, Тейлър трябваше да промени подхода си за разработване на база данни: "Чрез разработване на ясна ERD [диаграма на връзката на обекта] с всички необходими полета първо, моето уеб приложение е ефективно и общото ми време за разработка е значително намалено."

В някои случаи инструментите за разработка на облак работят като реалния свят - поне на вчерашната версия на реалния свят. Джеф Хенсли, старши анализатор на HRIS в DaVita, здравна фирма, специализирана в бъбречната диализа, беше изненадан, че разработчиците, работещи в облака, трябва да използват инструментите на командния ред, XML и SQL, "което ми напомни за старите DOS дни". Той очаква този подход на старата школа да се промени с течение на времето, когато осиновяването се увеличава.

DaVita използва както платформи за доставка на приложения в облак, така и хоствани сървъри, за да разработи и достави приложения за съхранение на данни за човешки ресурси и приложения за бизнес разузнаване.

Разработване на облак 2: Някои приложения не са идеални за разработка в облака

Например Дан Стюк, вицепрезидент на ИТ за образователните министерства на вярата, избягва разработването на приложения от висок клас в облака, които имат изключителна сигурност на данните или регулаторни ограничения, или разчита на стари проекти за кодиране, като тези в Кобол. „Тези двамата вероятно са най-добре да се държат в къщата“, казва той, „първото поради очевидните опасения за сигурността, а второто заради„ мъртвия “език.“

Където Stueck е използвал облака, е да стартира сървър за разработка в публичната облачна услуга на Amazon.com и да изгради информационна система за ученици, архив на студентски преписи и приложение за продажба на домашни учебници в облака.

Развитие на облака 3: Разработчиците често не харесват непознатата облачна територия

„Нещото, което вероятно беше най-неочаквано, беше колко добре беше приет целият проект за [облачно разработване] от екипите за управление и продажби и всички, които използват системата, [и] колко лошо беше приет от ИТ организацията и по-специално разработчиците, "казва Марк Уорън, главен архитект в 20/20.

ИТ хората бяха свикнали да работят с Microsoft .Net, SQL Server, Java и други традиционни платформи за разработка, казва Уорън, а Force.com е съвсем различен модел. "Ако знаете SQL и Java, това е вашата кутия с инструменти и няма да искате да отидете на тази напълно извънземна платформа, която идва", казва Уорън.

В резултат на това приложението за продажби е разработено предимно от бизнес персонал, а не от ИТ разработчици. Това доведе до собствени предизвикателства, казва Уорън, най-голямото от които е липсата на разбиране сред бизнесмените относно управлението на промените и управлението на ИТ. „ИТ има ниво на дисциплина, което бизнесмените не са свикнали да налагат върху тях“, казва Уорън. „Трябваше да ги ускорим по въпросите на управлението на промените.“

Що се отнася до преодоляването на нежеланието на технологичните хора да се развиват в облачна среда, има програми, които ИТ може да приложи, за да помогне за вътрешното внедряване на облачни изчисления, казва Уорън. „Обучението със сигурност е добър метод за улесняване“, казва той. „Въпреки това, освен ако културата на ИТ не е отворена за нови методи и технологии, организационната промяна [привличането на нови разработчици] може да бъде единствената възможност.“

Развитие на облака, проблем 4: Липсата на документация пречи на разработчиците на облак

"Определено бих очаквал това да се промени, тъй като търсенето се увеличава и все повече компании започват да адаптират концепцията за облак", казва Хенсли. „Успяхме да се преборим с това, като си партнирахме с консултантска фирма.“

Развитие на облака, проблем 5: Проблемите с мрежата могат да нарушат частните среди в облака

Embarcadero използва своя виртуализиран център за данни за изграждане на приложения и тестване. „За вътрешните частни облаци имаме няколко опции: избор на планираната дата / час и организиране на това кои сървъри се извършват в определен ред“, казва Intersimone. „Има автоматизирани процеси за изграждане и автоматизирани тестове за дим, които се изпълняват през цялото време в нашия основен частен облак, а също и в регионалните офиси за развитие.“

За да получи по-достъпна среда, Intersimone казва, че търси облачен контейнер и виртуална частна мрежа, предлагана от CoheFTFT, която може да се инсталира в публични и частни облаци, за да осигури мащабиране при поискване, възстановяване при отказоустойчивост, готовност за бедствия

Други проблеми, които могат да повлияят на разработването и тестването, включват мрежови закъснения и латентност и размера на мрежовите тръби, особено в определени части на света. Ембаркадеро има центрове за изследвания и развитие в Скотс Вали, Калифорния, Монтерей, Калифорния, Торонто, Санкт Петербург, Флорида, и Яш, Румъния, плюс поръсване на по-малки екипи и хора по целия свят.

Разнообразната в географско отношение среда за разработка на Embarcadero "затруднява синхронизирането на чекове, компилации и автоматизирано тестване", казва Intersimone. За да разрешат част от това, разработчиците правят локални компилации и регионални компилации, както и при регистрация на код, на виртуалните сървъри, достъпни за всички. Разработчиците също правят локални компилации на собствени машини. Embarcadero гарантира, че те не излизат от синхрон с основните версии на частния облак, като използва Subversion, инструмент с отворен код за контрол на изходния код.

„Когато настъпи компилация, се изпълнява автоматизиран тест за валидиране на компилацията“, казва Intersimone. "Тогава известията отиват до всички екипи за разработка и компилацията автоматично се изтегля през китайска стена към голям брой автоматизирани тестови виртуални машини в нашите центрове за разработка." Автоматизирани и ръчни тестове се правят на получената компилация, за да се провери състоянието и имейлите се изпращат до други членове на екипа след приключване на този процес. „Всичко това се случва непрекъснато по време на развитието на проекта“, казва той.

Развитие на облака, разбира се 6: Лесно е да оставите измервателния уред да работи ненужно в облака

Друг потенциален проблем е загубата на пари за облачни такси. Разработчиците могат лесно да забравят или пренебрегнат изключването на виртуални машини, които не използват. „Чувал съм от някои клиенти, които позволяват на разработчиците да се развихрят с ресурси за виртуални машини, че понякога разработчиците просто биха оставили нещата да работят, да речем през уикенда“, казва Knipp на Gartner. "Когато беше на вътрешен, капитализиран сървър, това не беше голяма работа. Но когато е на измервани от ползвани, наети ресурси, както при публичните изчисления в облак, това е загуба на пари."

Книп казва, че очаква това да се превърне в ново предизвикателство за предприятията, тъй като те разгръщат частни облачни инициативи.

Въпреки че има малък риск да получите голяма, неочаквана сметка за използване на виртуална машина за разработчици в частен облак, „в самообслужваща се частна IaaS среда разработчикът може да върти виртуални машини и никога да не ги изключва“, казва Knipp. "Те ефективно ще изядат ресурси от машини, които не се използват ефективно и биха могли да доведат до закупуване на твърде много капацитет от организацията, тъй като планирането се изкривява."

Разработване на облак gotcha 7: Облачните лицензи могат да съдържат изненадващи ограничения за внедряване

Сред нетехническите проблеми с облака, които могат да окажат въздействие върху развитието, са лицензионните ограничения. Преди две години Kelly Services, национална временна агенция, реши да използва базирано на облак развитие за много от своите домашни приложения, като платформата Force.com на Salesforce.com действа като средство за доставка.

Разработката на облак донесе предимства като по-бързото време за разработване на приложения и по-ниски разходи, казва Джо Доруин, CIO в Kelly Services. Но компанията се сблъска и с някои неочаквани проблеми с лицензирането, по-специално по отношение на това какви типове потребителски места има и какви ограничения те носят. Например седалката може да има определен брой обекти, до които потребителят може да има достъп. В резултат на това „в някои моменти бяхме изненадани от това, което можем или не можем да направим“ с развитието, казва Друан.

Разработване на облак 8: Интеграцията може да бъде по-трудна за отстраняване на неизправности