Чаро инқилоби бе сервер ба бунбаст афтодааст

Нуқтаҳои асосӣ

  • Чанд сол боз ба мо ваъда дода шуда буд, ки компютерҳои бе сервер (бе сервер) давраи навро бидуни OS мушаххас барои иҷрои барномаҳо мекушояд. Ба мо гуфтанд, ки чунин сохтор бисёр мушкилоти миқёспазириро ҳал мекунад. Дар асл, ҳама чиз гуногун аст.
  • Ҳарчанд бисёриҳо технологияи бе серверро як идеяи нав медонанд, решаҳои онро метавон аз соли 2006 бо Zimki PaaS ва Google App Engine пайгирӣ кард, ки ҳарду аз меъмории бе сервер истифода мебаранд.
  • Чаҳор сабаб вуҷуд дорад, ки инқилоби бе сервер қатъ шудааст, аз дастгирии маҳдуди забони барномасозӣ то мушкилоти иҷроиш.
  • Компютерҳои бе сервер он қадар бефоида нест. Дур аз он. Аммо, онҳо набояд ҳамчун ивазкунандаи мустақими серверҳо дида шаванд. Барои баъзе барномаҳо, онҳо метавонанд як воситаи муфид бошанд.

Сервер мурдааст, зинда бод сервер!

Ин фарёди ҷангии ҷонибдорони инқилоби бе сервер аст. Як нигоҳи зуд ба матбуоти саноатӣ дар тӯли чанд соли охир кофӣ аст, ки ба хулосае ояд, ки модели анъанавии сервер мурдааст ва пас аз чанд сол мо ҳама меъмории бе серверро истифода хоҳем бурд.

Тавре ки ҳама дар соҳаи саноат медонад, ва чунон ки мо низ дар мақолаи худ дар бораи ишора ҳолати ҳисоббарории бе сервер, ин нодуруст аст. Сарфи назар аз маколахои бисьёре дар бораи мохият инқилоби бе сервер, он ҳеҷ гоҳ сурат нагирифтааст. Дар асл, таҳқиқоти охирин нишон медиҳандки ин революция шояд ба сарбаста расида бошад.

Баъзе ваъдаҳо барои моделҳои бе сервер албатта иҷро шуданд, аммо на ҳама. На ҳама.

Дар ин мақола ман мехоҳам сабабҳои ин ҳолатро баррасӣ кунам. Чаро набудани чандирии моделҳои бе сервер то ҳол монеаи қабули васеътари онҳост, гарчанде ки онҳо дар шароити мушаххас ва хуб муайяншуда муфид боқӣ мемонанд.

Он чизе ки устоҳои компютерҳои бе сервер ваъда доданд

Пеш аз гузаштан ба мушкилоти компютерҳои бе сервер, биёед бубинем, ки онҳо чӣ бояд таъмин кунанд. Ваъдаҳои инқилоби бе сервер сершумор буданд ва баъзан — хеле серталаб буданд.

Барои онҳое, ки бо истилоҳ ошно нестанд, ин ҷо таърифи мухтасар аст. Компютерҳои бидуни сервер меъмориро муайян мекунад, ки дар он барномаҳо (ё қисмҳои барномаҳо) дар муҳити корӣ, ки маъмулан аз дур ҷойгир карда мешаванд, мувофиқи талабот кор мекунанд. Илова бар ин, системаҳои бе сервер метавонанд ҷойгир карда шаванд. Сохтани системаҳои боэътимоди бе сервер дар тӯли чанд соли охир як нигаронии асосии маъмурони система ва ширкатҳои SaaS буд, зеро (ин иддао мешавад) ин меъморӣ нисбат ба модели "анъанавии" муштарӣ/сервер якчанд бартариҳои калидӣ пешкаш мекунад:

  1. Моделҳои бе сервер аз корбарон талаб намекунанд, ки системаҳои оператсионии худро нигоҳ доранд ё ҳатто барномаҳоеро эҷод кунанд, ки бо системаҳои мушаххаси оператсионӣ мувофиқанд. Ба ҷои ин, таҳиягарон рамзи муштарак эҷод мекунанд, онро ба платформаи бе сервер бор мекунанд ва иҷроиши онро тамошо мекунанд.
  2. Манбаъҳо дар чаҳорчӯбаҳои бе сервер одатан бо дақиқаҳо (ё ҳатто сонияҳо) ҳисоб карда мешаванд. Ин маънои онро дорад, ки муштариён танҳо барои вақти иҷро кардани код пардохт мекунанд. Ин бо VM абрии анъанавӣ, ки дар он мошин аксар вақт бекор аст, хуб муқоиса мекунад, аммо шумо бояд барои он пардохт кунед.
  3. Проблемаи васеъшавй низ хал карда шуд. Сарчашмаҳо дар чаҳорчӯбаҳои бе сервер ба таври динамикӣ таъин карда мешаванд, то система ба осонӣ бо суръатҳои ногаҳонии талабот мубориза барад.

Хулоса, моделҳои бе сервер ҳалли чандир, камхарҷ ва миқёспазирро пешниҳод мекунанд. Ман ҳайронам, ки мо ин идеяро пештар фикр намекардем.

Оё ин дар ҳақиқат як идеяи нав аст?

Дар асл, идея нав нест. Консепсияи иҷозат додан ба корбарон танҳо барои он вақт пардохт кардани код дар асл кор мекунад, зеро он дар доираи қонун ҷорӣ карда шуд Зимки ПааС дар соли 2006 ва тақрибан дар ҳамон вақт, Google App Engine ҳалли хеле монандро пешниҳод кард.

Дарвоқеъ, он чизе, ки мо ҳоло модели "бесервер" меномем, аз бисёре аз технологияҳое, ки ҳоло "абри модарӣ" ном доранд, қадимтар аст, ки тақрибан якхеларо таъмин мекунанд. Тавре зикр гардид, моделҳои бе сервер аслан танҳо як тамдиди модели тиҷоратии SaaS мебошанд, ки даҳсолаҳо вуҷуд доранд.

Инчунин бояд эътироф кард, ки модели бе сервер меъмории FaaS нест, гарчанде ки байни ин ду робита вуҷуд дорад. FaaS аслан қисми ҳисоббарории меъмории бе сервер мебошад, аммо он тамоми системаро ифода намекунад.

Пас чаро ин ҳама таблиғ? Хуб, вақте ки суръати воридшавии Интернет дар кишварҳои рӯ ба тараққӣ босуръат афзоиш меёбад, талабот ба захираҳои компютерӣ низ меафзояд. Масалан, бисёре аз кишварҳое, ки бахшҳои тиҷорати электронӣ босуръат рушд мекунанд, танҳо инфрасохтори ҳисоббарорӣ барои барномаҳо дар ин платформаҳо надоранд. Дар ин ҷо платформаҳои бе сервери пулакӣ ворид мешаванд.

Мушкилот бо моделҳои бе сервер

Мушкилот дар он аст, ки моделҳои бе сервер… мушкилот доранд. Маро хато накунед: ман намегӯям, ки онҳо худашон бад ҳастанд ё дар баъзе ҳолатҳо ба баъзе ширкатҳо арзиши назаррас намедиҳанд. Аммо даъвои асосии "инқилоб" - дар бораи он ки меъмории бе сервер ба зудӣ меъмории анъанавиро иваз мекунад - ҳеҷ гоҳ ба амал намеояд.

Барои ҳамон.

Дастгирии маҳдуд барои забонҳои барномасозӣ

Аксари платформаҳои бе сервер танҳо имкон медиҳанд, ки барномаҳои бо забонҳои муайян навишташуда кор кунанд. Ин чандирӣ ва мутобиқшавии ин системаҳоро ба таври ҷиддӣ маҳдуд мекунад.

Платформаҳои бе сервер барои дастгирии аксари забонҳои асосӣ ҳисобида мешаванд. AWS Lambda ва Azure Functions инчунин барои иҷро кардани барномаҳо ва функсияҳо бо забонҳои дастгирӣнашаванда як парпеч таъмин мекунанд, гарчанде ки ин аксар вақт бо арзиши иҷроиш меояд. Ҳамин тавр, барои аксари созмонҳо, ин маҳдудият одатан як чизи бузург нест. Аммо гап дар ин ҷост. Яке аз бартариҳои моделҳои бе сервер бояд он аст, ки барномаҳои норавшан ва кам истифодашаванда метавонанд арзонтар истифода шаванд, зеро шумо танҳо барои вақти корашон пардохт мекунед. Ва барномаҳои норавшан ва кам истифодашаванда аксар вақт дар... забонҳои норавшан ва кам истифодашавандаи барномасозӣ навишта мешаванд.

Ин яке аз бартариҳои асосии модели бе серверро вайрон мекунад.

Пайвастшавӣ ба фурӯшанда

Мушкилоти дуюм бо платформаҳои бе сервер ё ҳадди аққал тарзи татбиқи онҳо дар он аст, ки онҳо одатан дар сатҳи амалиётӣ ба ҳам монанд нестанд. Дар робита ба функсияҳои навиштан, ҷойгиркунӣ ва идоракунӣ амалан стандартизатсия вуҷуд надорад. Ин маънои онро дорад, ки интиқоли хусусиятҳо аз як платформа ба платформаи дигар хеле вақтро мегирад.

Қисмати душвортарини гузаштан ба модели бе сервер ин хусусиятҳои ҳисоббарорӣ нест, ки одатан танҳо порчаҳои код мебошанд, балки чӣ гуна барномаҳо бо системаҳои пайвастшуда, аз қабили нигоҳдории объект, идоракунии шахсият ва навбатҳо муошират мекунанд. Функсияҳоро интиқол додан мумкин аст, аммо боқимондаи барнома наметавонанд. Ин комилан муқобили платформаҳои арзон ва чандир аст.

Баъзеҳо мегӯянд, ки моделҳои бе сервер наванд ва барои стандартизатсия кардани тарзи корашон вақт набуд. Аммо онҳо он қадар нав нестанд, тавре ки ман дар боло қайд кардам ва бисёр технологияҳои абрии дигар, аз қабили контейнерҳо, аз ҳисоби таҳия ва қабули васеъи стандартҳои хуб аллакай хеле қулайтар шудаанд.

Маҳсулнокӣ

Андозаи иҷрои компютерии платформаҳои бе сервер душвор аст, зеро қисман фурӯшандагон маълумотро махфӣ нигоҳ медоранд. Аксарият бар он ақидаанд, ки хусусиятҳо дар платформаҳои дурдаст ва бе сервер ҳамон тавре, ки дар серверҳои дохилӣ кор мекунанд, зуд кор мекунанд ва барои якчанд мушкилоти таъхирнопазири таъхирнопазир сарфа мекунанд.

Бо вуҷуди ин, баъзе далелҳо чизи дигареро нишон медиҳанд. Функсияҳое, ки қаблан дар платформаи мушаххас кор намекарданд ё чанд вақт иҷро нашудаанд, барои оғозёбӣ каме вақт лозиманд. Эҳтимол ин ба он вобаста аст, ки коди онҳо ба як василаи нигоҳдории камтар дастрас интиқол дода шудааст, гарчанде ки ба монанди нишондиҳандаҳо - аксари фурӯшандагон ба шумо дар бораи интиқоли маълумот намегӯянд.

Албатта, якчанд роҳҳо барои бартараф кардани ин вуҷуд доранд. Яке аз онҳо оптимизатсия кардани хусусиятҳо барои ҳар забони абрии платформаи бе сервери шумост, аммо ин то ҳадде даъворо дар бораи он, ки ин платформаҳо "часпон" мебошанд, халалдор мекунад.

Равиши дигар ин аст, ки барномаҳои муҳими иҷроиш мунтазам иҷро шаванд, то онҳо "тару тоза" нигоҳ дошта шаванд. Ин равиши дуюм, албатта, ба иддаои он ки платформаҳои бе сервер камхарҷтаранд, каме мухолиф аст, зеро шумо танҳо барои вақти кор кардани барномаҳои шумо пардохт мекунед. Провайдерҳои абрӣ роҳҳои нави коҳиш додани оғози сардиро ҷорӣ карданд, аммо бисёре аз онҳо "миқёс ба як" (миқёс ба як) талаб мекунанд, ки арзиши аслии FaaS-ро коҳиш медиҳад.

Мушкилоти оғози сардро метавон қисман тавассути ба кор даровардани системаҳои бе сервер дар дохили хона ҳал кард, аммо ин ба арзиши худ меояд ва барои дастаҳои бо захираҳои хуб таъминшуда як вариант боқӣ мемонад.

Шумо наметавонед тамоми барномаҳоро иҷро кунед

Ниҳоят, шояд сабаби муҳимтарини он аст, ки меъмории бе сервер ба зудӣ моделҳои анъанавиро иваз намекунад, ин аст, ки онҳо (умуман) тамоми барномаҳоро иҷро карда наметавонанд.

Аниқтараш, аз нуқтаи назари хароҷот ғайриимкон аст. Монолити бомуваффақияти шумо набояд ба маҷмӯи чаҳор даҳҳо функсияҳо, ки бо ҳашт дарвоза, чил навбат ва даҳҳо мисолҳои пойгоҳи додаҳо пайвастанд, табдил дода шавад. Аз ин сабаб, бе сервер барои таҳаввулоти нав мувофиқтар аст. Аслан ягон барномаи мавҷуда (архитектура) интиқол дода намешавад. Шумо метавонед муҳоҷират кунед, аммо шумо бояд аз сифр оғоз кунед.

Ин маънои онро дорад, ки дар аксари ҳолатҳо, платформаҳои бе сервер ҳамчун илова ба серверҳои пас-энҳо барои иҷрои вазифаҳои пуршиддати ҳисоббарорӣ истифода мешаванд. Ин аз ду шакли дигари роёниши абрӣ, контейнерҳо ва мошинҳои виртуалӣ, ки роҳи ҳамаҷонибаи иҷрои роёниши дурдастро пешниҳод мекунанд, хеле фарқ мекунад. Ин яке аз мушкилоти гузаришро аз хидматрасониҳои хурд ба системаҳои бе сервер нишон медиҳад.

Албатта, ин на ҳамеша мушкилот аст. Қобилияти мунтазам истифода бурдани захираҳои бузурги компютерӣ бидуни харидани сахтафзори шахсии шумо метавонад ба бисёр созмонҳо манфиатҳои воқеӣ ва пойдор оварад. Аммо агар баъзе барномаҳо дар серверҳои дохилӣ бошанд ва дигарон дар меъмории абрии бе сервер бошанд, пас идоракунӣ ба сатҳи нави мураккабӣ ворид мешавад.

Зинда бод революция?

Бо вуҷуди ҳамаи ин шикоятҳо, ман ба ҳалли бе сервер мухолиф нестам. Ростқавлона. Ин танҳо он аст, ки таҳиягарон бояд фаҳманд - алахусус агар онҳо бори аввал моделҳои бе серверро меомӯзанд - ин технология ивазкунандаи мустақими серверҳо нест. Ба ҷои ин, маслиҳатҳо ва захираҳои моро санҷед сохтани барномаҳои бе сервер ва қарор диҳед, ки чӣ тавр беҳтарин истифода бурдани ин модел.

Манбаъ: will.com

Илова Эзоҳ