У чым розніца паміж API, вэб-сэрвісам і мікрасэрвісам?


адказ 1:

→ Што такое API?

API з'яўляюцца будаўнічымі блокамі падлучэння да Інтэрнэту. Яны з'яўляюцца сродкам для ўзаемадзеяння некалькіх прыкладанняў, дадзеных і прылад. Прасцей кажучы, API - гэта мессенджер, які прымае запыты і паведамляе сістэме, што вы хочаце зрабіць, а потым вяртае карыстачу адказ. Дакументацыя ствараецца для кожнага API, уключаючы інфармацыю пра спосаб перадачы інфармацыі паміж дзвюма сістэмамі.

→ Што такое вэб-сэрвісы?

Вэб-службай можа служыць любое праграмнае забеспячэнне, якое выкарыстоўвае стандартызаваную сістэму абмену паведамленнямі XML і даступнае ў Інтэрнэце праз Інтэрнэт. XML расшыфроўваецца як мова разметкі eXtensible і выкарыстоўваецца для кадавання ўсёй сувязі з вэб-службай. Напрыклад, кліент тэлефануе ў вэб-службу, дасылаючы паведамленне XML, а потым чакае адпаведнага адказу XML.

→ Што такое мікрасэрвіс?

Калекцыя мэтанакіраваных і невялікіх сэрвісаў, якія распрацоўваюць поўнае прыкладанне пры выкананні. Адзіная адказнасць за дадатак, якое вы распрацоўваеце, прадстаўляе асобнік мікрасэрвісу. Мікрасэрвіс - гэта працэс, які самастойна адаптуецца, і выконвае унікальную здольнасць бізнесу.

Цяпер, калі вы ведаеце розніцу паміж тым, чым яны займаюцца, давайце разбярэмся, чаму яны маюць значэнне.

→ Значэнне API -

API могуць публічна ўзаемадзейнічаць з іншымі прыкладаннямі. У канчатковым выніку павялічыць аб'ём бізнесу кампаніі. Такім чынам, калі мы замоўляем білет праз Bookmyshow.com, мы ўводзім падрабязную інфармацыю пра фільм, які мы хочам паглядзець.

  • Назва фільмаLocality3D / 2DLanguage

Гэтыя звесткі здабываюцца з API і перадаюцца на серверы, звязаныя з рознымі тэатрамі, каб аднавіць сукупны адказ з некалькіх іншых сервераў. Дайце карыстачу зручна выбраць, які тэатр падыходзіць лепш за ўсё? Так узаемадзейнічаюць розныя прыкладанні адзін з адным.

Замест таго, каб ствараць вялікія прыкладанні, а потым дадаваць больш функцый праз код. Сёння патрабуецца архітэктура мікрасэрвісу, пры якой мы ствараем некалькі індывідуальна арыентаваных модуляў з дакладна вызначанымі інтэрфейсамі, а потым аб'ядноўваем іх у маштабуемы, выпрабаваны прадукт. Прадукт ці праграмнае забеспячэнне, якое можа спатрэбіцца год, могуць быць пастаўлены за некалькі тыдняў пры дапамозе Micro Service Architecture.

  • API служыць неабходнасцю для архітэктуры Micro Service. Уявіце прыкладанне, якое прадастаўляе канчатковым карыстальнікам музыку, крамы і паслугі па аплаце рахункаў пад адным капотам. Карыстальнік павінен увайсці ў дадатак і выбраць паслугу для спажывання. API неабходны для супрацоўніцтва розных сэрвісаў для такога прыкладання і спрыяе агульнаму паляпшэнню UX. API таксама забяспечвае дадатковы ўзровень бяспекі дадзеных. Дадзеныя карыстальніка не перакрытыя серверам, а таксама дадзеныя сервера, якія не падвяргаюцца ўздзеянню. Што тычыцца фільмаў, API паведамляе серверу тое, што карыстальнік хоча бачыць, а потым паведамляе карыстачу, што яму даць, каб выкупіць паслугу. У канчатковым выніку вы можаце паглядзець фільм, і пастаўшчык паслуг будзе залічаны адпаведна.

→ Важнасць вэб-сэрвісу -

Ёсць два віды вэб-сэрвісаў: - SOAP і REST

Перавагі вэб-сэрвісаў REST

  • Архітэктурны ўзор REST у асноўным лёгкі. Такім чынам, калі ў вас ёсць абмежаванне прапускной здольнасці, вы аддаеце перавагу вэб-сэрвісу REST. Лёгка і хутка развівацца. Ён таксама настроены большасцю сайтаў сацыяльных сетак. Развіццё мабільных прыкладанняў імкліва павялічваецца, і гэтая схема REST выкарыстоўваецца для ўзаемадзеяння з серверам, паколькі паскарае апрацоўку дадзеных запытаў / адказаў.

Перавагі вэб-сэрвісаў SOAP

  • Вэб-сэрвіс апісвае сябе з дапамогай WSDLC-сувязі з выкарыстаннем адкрытых пратаколаў, такіх як SOAP / HTTP. Слаба звязаныя, бо гэтыя ўзаемадзеянні залежаць ад платформы і незалежнасці ад мовы. Схема (XSD) можа быць выкарыстана для апісання шаблону паведамлення на запыт / адказ.

→ Важнасць мікрасэрвісаў -

  • Змены простыя - З пашырэннем змяненняў кампаніямі гэта частка жыцця распрацоўшчыка праграмнага забеспячэння. Мікрасэрвіс стварае няшчыльна звязаную сістэму. Такім чынам, калі мы калі-небудзь хочам аднавіць, абнавіць або замяніць мікрасэрвіс, нам не прыйдзецца аднаўляць усё прыкладанне. Дастаткова проста узнавіць гэты канкрэтны MS. Гэта вельмі карысна ў гіганцкай карпаратыўнай сістэме. Мы таксама можам унесці змены ў мікрасэрвіс, проста дэактываваўшы гэтую мікрасэрвіс, а не ўсю сістэму. Бяспека дадзеных - Кожная МС дапамагае наладзіць адзіную дзелавую функцыю і мае ўласнае асобнае сховішча дадзеных. Напрыклад старонка рэгістрацыі кліента. Гэта прадухіляе пашкоджанне ўсёй базы дадзеных. Гнуткасць - можа пісацца на розных мовах кода. Статыстычная камунікацыя - Кожны запыт і адказ стварае незалежныя транзакцыі, якія дазваляюць лёгка маштабаваць. Папярэджвае поўнае адключэнне - калі адна з вашых мікрасэрвісаў ідзе на поўдзень, гэта не вядзе да перашкод іншым мікрасэрвісам. Створаны дзелавымі функцыямі - Ён не арганізаваны ў залежнасці ад пластоў праграмнага забеспячэння, таму нам не трэба ствараць вэб-MS, Business MS або базу дадзеных MS. Замест гэтага мы ствараем MS для бізнес-функцый. Менавіта таму мы ствараем мікрасэрвіс для апрацоўкі: праверка сапраўднасці спісаў пажаданняў інвентару, фільтры дэбетавых і крэдытных карт для многіх іншых мэтаў.

Гэтыя сэрвісы могуць тычыцца міні-дадаткаў з невялікім адбіткам, якія прапануюць функцыянальнасць бізнесу.

Спадзяюся, гэта дапаможа вам зразумець розніцу паміж API, вэб-службамі і мікрасэрвісамі.

Бывайце здаровы, Павел Харшыт


адказ 2:

API расшыфроўваецца як інтэрфейс праграмавання прыкладанняў. Гэта шэраг праграмных функцый, класаў, метадаў і іншых рэчаў (у залежнасці ад тыпу інтэрфейсу і мовы праграмавання), якія дазваляюць праграмнай праграме нешта ўзаемадзейнічаць. Напрыклад, аперацыйныя сістэмы прадастаўляюць API для праграм і прыкладанняў, каб прыкладанне можа выклікаць службу аперацыйнай сістэмы для іх выкарыстання. Яшчэ адзін прыклад: некаторыя аплатныя сістэмы ў Інтэрнэце могуць забяспечваць як звычайны вэб-сайт (для людзей), так і API (для камп'ютэрных праграм). API Win32 - гэта набор функцый, структуры дадзеных і іншых інструментаў, якія прадстаўляюцца аперацыйнай сістэмай Windows, каб прыкладныя праграмы маглі карыстацца паслугамі Аперацыйнай сістэмы і нармальна працаваць. Такім чынам, API - гэта даволі агульны тэрмін, які паказвае, як распрацоўшчык праграмнага забеспячэння можа выкарыстоўваць што-небудзь з праграмнага прыкладання.

Вэб-служба - гэта праграмнае забеспячэнне, якое прадастаўляецца праз Web / HTTP (s). Гэта азначае, што ў Інтэрнэце ёсць сервер, які падае URL і ўказвае, які HTTP-запыт ён можа прымаць і апрацоўваць. Паслуга можа быць любой тыпам апрацоўкі інфармацыі - галоўнае, што паслуга павінна выкарыстоўвацца праз Web / HTTP (ы). Самы папулярны і стандартны спосаб арганізацыі вэб-сэрвісу называецца REST (Reprezenta State Transfer). Аднак ёсць і іншыя варыянты (напрыклад, SOAP / WSDL).

Вэб-сэрвіс можа быць формай прадастаўлення API сістэме, але API з'яўляецца значна больш агульным тэрмінам.

Паняцце мікрасэрвісу не мае нічога агульнага з API або з вэб-службай. Гэта адзін з (папулярных у цяперашні час) спосабаў пабудовы складанай праграмнай сістэмы (часта карпаратыўнага вэб-прыкладання). Ідэя заключаецца ў тым, што вы не распрацоўваеце велізарны маналітны дадатак, а падзяліце яго на некалькі дзясяткаў (ці сотняў) адносна невялікіх незалежных частак (званых мікрасэрвісамі). Кожная мікрасэрвіс можа вельмі добра выканаць адну ці некалькі задач і мець зносіны з іншымі мікрасэрвісамі, каб забяспечыць яе ноу-хау у сістэме. Мікрасэрвіс можа мець розныя спосабы зносін паміж сабой, напрыклад, Б. праз TCP або HTTP-злучэнні, дзякуючы якім сістэма можа распаўсюджвацца (так што розныя мікрасэрвісы фізічна знаходзяцца на розных серверах). Apache Thrift і Apache Kafka - прыклады інструментаў, якія могуць забяспечыць механізм сувязі TCP паміж мікрасэрвісамі.

Падыход мікрасэрвісаў мае мноства пераваг і недахопаў і, магчыма, варта падрабязна абмеркаваць яго як асобную тэму.


адказ 3:

API расшыфроўваецца як інтэрфейс праграмавання прыкладанняў. Гэта шэраг праграмных функцый, класаў, метадаў і іншых рэчаў (у залежнасці ад тыпу інтэрфейсу і мовы праграмавання), якія дазваляюць праграмнай праграме нешта ўзаемадзейнічаць. Напрыклад, аперацыйныя сістэмы прадастаўляюць API для праграм і прыкладанняў, каб прыкладанне можа выклікаць службу аперацыйнай сістэмы для іх выкарыстання. Яшчэ адзін прыклад: некаторыя аплатныя сістэмы ў Інтэрнэце могуць забяспечваць як звычайны вэб-сайт (для людзей), так і API (для камп'ютэрных праграм). API Win32 - гэта набор функцый, структуры дадзеных і іншых інструментаў, якія прадстаўляюцца аперацыйнай сістэмай Windows, каб прыкладныя праграмы маглі карыстацца паслугамі Аперацыйнай сістэмы і нармальна працаваць. Такім чынам, API - гэта даволі агульны тэрмін, які паказвае, як распрацоўшчык праграмнага забеспячэння можа выкарыстоўваць што-небудзь з праграмнага прыкладання.

Вэб-служба - гэта праграмнае забеспячэнне, якое прадастаўляецца праз Web / HTTP (s). Гэта азначае, што ў Інтэрнэце ёсць сервер, які падае URL і ўказвае, які HTTP-запыт ён можа прымаць і апрацоўваць. Паслуга можа быць любой тыпам апрацоўкі інфармацыі - галоўнае, што паслуга павінна выкарыстоўвацца праз Web / HTTP (ы). Самы папулярны і стандартны спосаб арганізацыі вэб-сэрвісу называецца REST (Reprezenta State Transfer). Аднак ёсць і іншыя варыянты (напрыклад, SOAP / WSDL).

Вэб-сэрвіс можа быць формай прадастаўлення API сістэме, але API з'яўляецца значна больш агульным тэрмінам.

Паняцце мікрасэрвісу не мае нічога агульнага з API або з вэб-службай. Гэта адзін з (папулярных у цяперашні час) спосабаў пабудовы складанай праграмнай сістэмы (часта карпаратыўнага вэб-прыкладання). Ідэя заключаецца ў тым, што вы не распрацоўваеце велізарны маналітны дадатак, а падзяліце яго на некалькі дзясяткаў (ці сотняў) адносна невялікіх незалежных частак (званых мікрасэрвісамі). Кожная мікрасэрвіс можа вельмі добра выканаць адну ці некалькі задач і мець зносіны з іншымі мікрасэрвісамі, каб забяспечыць яе ноу-хау у сістэме. Мікрасэрвіс можа мець розныя спосабы зносін паміж сабой, напрыклад, Б. праз TCP або HTTP-злучэнні, дзякуючы якім сістэма можа распаўсюджвацца (так што розныя мікрасэрвісы фізічна знаходзяцца на розных серверах). Apache Thrift і Apache Kafka - прыклады інструментаў, якія могуць забяспечыць механізм сувязі TCP паміж мікрасэрвісамі.

Падыход мікрасэрвісаў мае мноства пераваг і недахопаў і, магчыма, варта падрабязна абмеркаваць яго як асобную тэму.