Akojọ ayẹwo fun ṣiṣẹda ati titẹjade awọn ohun elo wẹẹbu

Lati le ṣẹda ohun elo wẹẹbu tirẹ ni akoko wa, ko to lati ni anfani lati ṣe idagbasoke rẹ. Abala pataki kan ni siseto awọn irinṣẹ fun imuṣiṣẹ ohun elo, ibojuwo, bakanna bi iṣakoso ati iṣakoso agbegbe ti o n ṣiṣẹ. Bi akoko imuṣiṣẹ afọwọṣe ti n lọ si igbagbe, paapaa fun awọn iṣẹ akanṣe kekere, awọn irinṣẹ adaṣe le mu awọn anfani ojulowo wa. Nigbati o ba nlo “nipasẹ ọwọ”, a le gbagbe nigbagbogbo lati gbe nkan kan, ṣe akiyesi eyi tabi nuance, ṣiṣe idanwo igbagbe, atokọ yii le tẹsiwaju fun igba pipẹ.

Nkan yii le ṣe iranlọwọ fun awọn ti o kan kọ awọn ipilẹ ti ṣiṣẹda awọn ohun elo wẹẹbu ati fẹ lati ni oye diẹ nipa awọn ofin ipilẹ ati awọn apejọ.

Nitorinaa, awọn ohun elo ile tun le pin si awọn apakan 2: ohun gbogbo ti o nii ṣe pẹlu koodu ohun elo, ati ohun gbogbo ti o nii ṣe pẹlu agbegbe ti koodu yii ti ṣiṣẹ. Awọn koodu ohun elo, ni ọna, tun pin si koodu olupin (eyiti o nṣiṣẹ lori olupin, nigbagbogbo: iṣaro iṣowo, aṣẹ, ipamọ data, ati bẹbẹ lọ), ati koodu onibara (eyiti o nṣiṣẹ lori ẹrọ olumulo: nigbagbogbo ni wiwo, ati awọn ibatan kannaa pẹlu rẹ).

Jẹ ká bẹrẹ pẹlu Wednesday.

Ipilẹ fun iṣẹ eyikeyi koodu, eto, tabi sọfitiwia ni Eto Ṣiṣẹ, nitorinaa ni isalẹ a yoo wo awọn eto olokiki julọ lori ọja alejo gbigba ati fun wọn ni apejuwe kukuru kan:

Windows Server - iyẹn gan-an Windows, ṣùgbọ́n ní ẹ̀yà ẹ̀gbẹ́ olupin. Àwọn iṣẹ́ kan wà ní ẹ̀yà oníbàárà (déédéé). Windows Fún àpẹẹrẹ, àwọn iṣẹ́ ìkójọ statistiki àti àwọn sọ́fítíwèjì tó jọra kò sí níbí, ṣùgbọ́n àwọn ohun èlò ìlò fún ìṣàkóso nẹ́tíwèjì wà, sọ́fítíwè ìpìlẹ̀ fún ìfiránṣẹ́ apèsè (wẹ́ẹ̀bù, ftp, …). Ní ​​gbogbogbòò, Windows Server o dabi ọkan deede Windows, awọn ẹlẹgàn bi ẹni deede Windows, sibẹsibẹ, o na ni ilọpo meji ju ti o jẹ deede. Sibẹsibẹ, ni akiyesi pe o ṣee ṣe ki o lo ohun elo naa lori olupin ti a yasọtọ/foju, idiyele ikẹhin le pọ si, ṣugbọn kii yoo ṣe pataki. Niwọn igba ti pẹpẹ naa ba ti lo Windows gba ipo pataki ni ọja OS onibara, ati pe ikede olupin rẹ yoo jẹ eyiti o mọ julọ si ọpọlọpọ awọn olumulo.

UNIX-iru eto. Iṣẹ aṣa ni awọn eto wọnyi ko nilo wiwa ti wiwo ayaworan ti o faramọ, fifun olumulo nikan console bi ipin iṣakoso. Fun olumulo ti ko ni iriri, ṣiṣẹ ni ọna kika yii le nira, kini idiyele ti ijade olootu ọrọ ti o gbajumọ pupọ ninu data Mo ti wá, ìbéèrè kan tó jọ èyí ti gba àwọn ènìyàn tó lé ní mílíọ̀nù 1.8 ní ọdún mẹ́fà tó kọjá. Àwọn ìpínkiri pàtàkì (àtúnṣe) ìdílé yìí ni: Debian — pinpin olokiki kan, awọn ẹya ti awọn idii ninu rẹ ni a dojukọ pataki si LTS (Atilẹyin Igba pipẹ - atilẹyin fun igba pipẹ), eyiti o ṣafihan ni igbẹkẹle giga ati iduroṣinṣin ti eto ati awọn idii; Ubuntu - ni awọn pinpin gbogbo awọn idii ni awọn ẹya tuntun wọn, eyiti o le ni ipa iduroṣinṣin, ṣugbọn ngbanilaaye lati lo iṣẹ ṣiṣe ti o wa pẹlu awọn ẹya tuntun; Red Hat Idawọlẹ Linux - OS, ti o wa ni ipo fun lilo iṣowo, sanwo, sibẹsibẹ, pẹlu atilẹyin lati ọdọ awọn olutaja sọfitiwia, diẹ ninu awọn idii ohun-ini ati awọn idii awakọ; CentOS – orísun gbogbogbòò iyipada ti Red Hat Enterprise Linux, ni a ṣe iyatọ nipasẹ aini awọn idii ati atilẹyin ti ara ẹni.

Fun awọn ti o bẹrẹ lati ṣakoso agbegbe yii, iṣeduro mi yoo jẹ awọn eto Windows Server, tabi UbuntuTí a bá ronú nípa rẹ̀ Windows, lẹ́yìn náà èyí ni àṣà ètò náà ní àkọ́kọ́, Ubuntu - ifarada diẹ sii si awọn imudojuiwọn, ati ni titan, fun apẹẹrẹ, awọn iṣoro diẹ nigba ifilọlẹ awọn iṣẹ akanṣe lori awọn imọ-ẹrọ ti o nilo awọn ẹya tuntun.

Nitorinaa, ti pinnu lori OS, jẹ ki a lọ si awọn irinṣẹ irinṣẹ ti o gba ọ laaye lati fi sori ẹrọ (fi sori ẹrọ), imudojuiwọn ati ṣe atẹle ipo ohun elo tabi awọn ẹya rẹ lori olupin naa.

Ipinnu pataki ti o tẹle yoo jẹ gbigbe ohun elo rẹ ati olupin fun rẹ. Ni akoko yii, o wọpọ julọ ni awọn ọna mẹta:

  • Alejo (titọju) olupin lori tirẹ jẹ aṣayan ore-isuna-isuna julọ, ṣugbọn iwọ yoo ni lati paṣẹ IP aimi lati ọdọ olupese rẹ ki orisun rẹ ko yi adirẹsi rẹ pada ni akoko pupọ.
  • Yalo olupin ifiṣootọ (VDS) - ati ni ominira lati ṣakoso rẹ ati awọn ẹru iwọn
  • Sanwo (nígbà gbogbo pẹ̀lú ìdánwò ọ̀fẹ́ ti iṣẹ́ pẹpẹ náà) fún ìforúkọsílẹ̀ sí iṣẹ́ ìgbalejò ìkùukùu, níbi tí àwòṣe ìsanwó-fún-lílò ti wọ́pọ̀. Àwọn aṣojú pàtàkì jùlọ ti ọ̀nà yìí ni Amazon AWS (tí ó ń fúnni ní ọdún iṣẹ́ ọ̀fẹ́, ṣùgbọ́n pẹ̀lú ààlà oṣooṣù), Google Cloud (tí ó ń fúnni ní $300 ní gbèsè tí a lè ná lórí àwọn iṣẹ́ ìkùukùu jálẹ̀ ọdún) alejo gbigba), Yandex.Cloud (4000 rubles fún oṣù méjì), àti Microsoft Azure (ìwọlé ọ̀fẹ́ sí àwọn iṣẹ́ olókìkí fún ọdún kan, pẹ̀lú 12,500 rubles fún iṣẹ́ èyíkéyìí fún oṣù kan). Nítorí náà, o lè gbìyànjú èyíkéyìí nínú àwọn olùpèsè wọ̀nyí láìnáwó kan, ṣùgbọ́n o ṣì ní òye díẹ̀ nípa dídára àti ìpele iṣẹ́ náà.

Ti o da lori ọna ti o yan, ohun kan ti yoo yipada ni ọjọ iwaju ni ẹniti o ni iduro pupọ fun eyi tabi agbegbe ti iṣakoso naa. Ti o ba gbalejo ararẹ, lẹhinna o gbọdọ loye pe eyikeyi awọn idilọwọ ni ina, Intanẹẹti, olupin funrararẹ, sọfitiwia ti a gbe sori rẹ - gbogbo eyi wa patapata lori awọn ejika rẹ. Sibẹsibẹ, fun ikẹkọ ati idanwo, eyi jẹ diẹ sii ju to.

Ti o ko ba ni ẹrọ afikun ti o le ṣe ipa ti olupin, lẹhinna o yoo fẹ lati lo ọna keji tabi kẹta. Ẹjọ keji jẹ aami kanna si akọkọ, pẹlu ayafi ti o ba yi ojuse fun wiwa olupin ati agbara rẹ si awọn ejika ti olutọju. Isakoso olupin ati sọfitiwia ṣi wa labẹ iṣakoso rẹ.

Ati nikẹhin, aṣayan ti yiyalo agbara ti awọn olupese awọsanma. Nibi o le ṣeto iṣakoso adaṣe ti o fẹrẹ to ohunkohun laisi lilọ sinu awọn alaye imọ-ẹrọ pupọ pupọ. Ni afikun, dipo ẹrọ kan, o le ni ọpọlọpọ awọn iṣẹlẹ ti nṣiṣẹ ni afiwe, eyiti o le, fun apẹẹrẹ, jẹ iduro fun awọn ẹya oriṣiriṣi ti ohun elo, lakoko ti o ko ni iyatọ pupọ ni idiyele lati nini olupin ifiṣootọ. Ati paapaa, awọn irinṣẹ wa fun orchestration, eiyan, imuṣiṣẹ adaṣe, isọpọ igbagbogbo ati pupọ diẹ sii! A yoo wo diẹ ninu awọn nkan wọnyi ni isalẹ.

Ni gbogbogbo, awọn amayederun olupin dabi eyi: a ni ohun ti a pe ni “orchestrator” (“orchestration” jẹ ilana ti ṣiṣakoso ọpọlọpọ awọn iṣẹlẹ olupin), eyiti o ṣakoso awọn iyipada ayika lori apẹẹrẹ olupin, eiyan agbara (aṣayan, ṣugbọn oyimbo. nigbagbogbo lo), eyiti o fun ọ laaye lati pin ohun elo naa si awọn ipele ọgbọn ti o ya sọtọ, ati sọfitiwia Integration Ilọsiwaju — gbigba awọn imudojuiwọn laaye si koodu ti gbalejo nipasẹ “awọn iwe afọwọkọ.”

Nitorinaa, orchestration n gba ọ laaye lati rii ipo awọn olupin, yi jade tabi yi awọn imudojuiwọn pada si agbegbe olupin, ati bẹbẹ lọ. Ni akọkọ, abala yii ko ṣeeṣe lati ni ipa lori rẹ, nitori lati le ṣe agbekalẹ ohunkohun, o nilo awọn olupin pupọ (o le ni ọkan, ṣugbọn kilode ti eyi ṣe pataki?), Ati lati ni ọpọlọpọ awọn olupin, o nilo wọn. Lara awọn irinṣẹ ni itọsọna yii, ọkan ti o gbajumo julọ jẹ Kubernetes, ti o ni idagbasoke nipasẹ Google.

Igbesẹ ti o tẹle jẹ agbara-agbara ni ipele OS. Ni ode oni, imọran ti “dockerization” ti di ibigbogbo, eyiti o wa lati ọpa Docker, eyiti o pese iṣẹ ṣiṣe ti awọn apoti ti o ya sọtọ si ara wọn, ṣugbọn ṣe ifilọlẹ ni aaye ti ẹrọ ṣiṣe kan. Kini eyi tumọ si: ninu ọkọọkan awọn apoti wọnyi o le ṣiṣe ohun elo kan, tabi paapaa ṣeto awọn ohun elo, eyiti yoo gbagbọ pe wọn nikan ni gbogbo OS, laisi paapaa fura pe ẹnikan wa lori ẹrọ yii. Iṣẹ yii wulo pupọ fun ifilọlẹ awọn ohun elo kanna ti awọn ẹya oriṣiriṣi, tabi nirọrun awọn ohun elo ti o fi ori gbarawọn, bakanna fun pinpin awọn ege ohun elo kan si awọn fẹlẹfẹlẹ. Simẹnti Layer yii le jẹ kikọ nigbamii si aworan kan, eyiti o le ṣee lo, fun apẹẹrẹ, lati fi ohun elo kan ranṣẹ. Iyẹn ni, nipa fifi sori aworan yii ati gbigbe awọn apoti ti o wa ninu rẹ, o gba agbegbe ti a ti ṣetan fun ṣiṣe ohun elo rẹ! Ni awọn igbesẹ akọkọ, o le lo ọpa yii mejeeji fun awọn idi alaye ati lati gba awọn anfani gidi pupọ nipa pinpin ọgbọn ohun elo sinu awọn ipele oriṣiriṣi. Ṣugbọn o tọ lati sọ nibi pe kii ṣe gbogbo eniyan nilo dockerization, ati kii ṣe nigbagbogbo. Dockerization jẹ idalare ni awọn ọran nibiti ohun elo jẹ “pipin”, pin si awọn apakan kekere, ọkọọkan lodidi fun iṣẹ tirẹ, eyiti a pe ni “faaji iṣẹ-iṣẹ microservice”.

Ni afikun, ni afikun si ipese agbegbe, a nilo lati rii daju imuṣiṣẹ ti oye ti ohun elo, eyiti o pẹlu gbogbo iru awọn iyipada koodu, fifi sori ẹrọ ti awọn ile-ikawe ti o ni ibatan ati awọn idii, awọn idanwo ṣiṣe, awọn iwifunni nipa awọn iṣẹ wọnyi, ati bẹbẹ lọ. Nibi a nilo lati fiyesi si iru imọran bii “Ijọpọ Ilọsiwaju” (CI - Ilọsiwaju Integration). Awọn irinṣẹ akọkọ ni agbegbe yii ni akoko Jenkins ( sọfitiwia CI ti a kọ ni Java le dabi idiju diẹ ni ibẹrẹ), Travis C.I. (ti a kọ ni Ruby, koko-ọrọ, rọrun diẹ Jenkins, sibẹsibẹ, diẹ ninu awọn imọ ni aaye ti iṣeto imuṣiṣẹ tun nilo), Gitlab CI (ti a kọ lori Ruby ati Lọ).

Nitorinaa, ti sọrọ nipa agbegbe ninu eyiti ohun elo rẹ yoo ṣiṣẹ, o to akoko lati nikẹhin wo kini awọn irinṣẹ ti agbaye ode oni nfunni fun ṣiṣẹda awọn ohun elo wọnyi.

Jẹ ki a bẹrẹ pẹlu awọn ipilẹ: Backend (backend) - olupin apa. Yiyan ede, ṣeto awọn iṣẹ ipilẹ ati eto asọye (fireemu) nibi ti pinnu nipataki nipasẹ awọn ayanfẹ ti ara ẹni, ṣugbọn sibẹsibẹ, o tọ lati darukọ fun ero (ero ti onkọwe nipa awọn ede jẹ koko-ọrọ, botilẹjẹpe pẹlu ẹtọ kan. si apejuwe aiṣedeede):

  • Python jẹ ede ti o tọ fun olumulo ti ko ni iriri, o dariji diẹ ninu awọn aṣiṣe, ṣugbọn o tun le jẹ ti o muna pẹlu olupilẹṣẹ ki o ko ṣe ohunkohun buburu. Tẹlẹ ede ti o dagba ati ti o nilari, eyiti o han ni ọdun 1991.
  • Lọ - ede kan lati Google, tun jẹ ọrẹ ati irọrun, o rọrun pupọ lati ṣajọ ati gba faili ti o le ṣiṣẹ lori pẹpẹ eyikeyi. O le jẹ rọrun ati dídùn, tabi o le jẹ eka ati pataki. Titun ati ọdọ, farahan laipẹ, ni ọdun 2009.
  • Ipata ti dagba diẹ sii ju ẹlẹgbẹ rẹ ti tẹlẹ lọ, ti a tu silẹ ni ọdun 2006, ṣugbọn o tun jẹ ọdọ ni akawe si awọn ẹlẹgbẹ rẹ. Eleto si awọn olupilẹṣẹ ti o ni iriri diẹ sii, botilẹjẹpe o tun gbiyanju lati yanju ọpọlọpọ awọn iṣẹ-ṣiṣe kekere-kekere fun olupilẹṣẹ naa.
  • Java jẹ oniwosan ti idagbasoke iṣowo, ti a ṣe ni 1995, ati pe o jẹ ọkan ninu awọn ede ti o wọpọ julọ ni idagbasoke ohun elo ile-iṣẹ loni. Pẹlu awọn imọran ipilẹ rẹ ati iṣeto iwuwo, akoko asiko le di nija pupọ fun olubere kan.
  • ASP.net jẹ ipilẹ idagbasoke ohun elo ti Microsoft tu silẹ. Lati kọ iṣẹ ṣiṣe, ede C # (ti a npe ni C Sharp), eyiti o farahan ni ọdun 2000, jẹ lilo ni pataki. Idiju rẹ jẹ afiwera si ipele laarin Java ati Rust.
  • PHP, ni akọkọ ti a lo fun iṣaju HTML, lọwọlọwọ, botilẹjẹpe o ni idari pipe ni ọja ede, aṣa wa si idinku ninu lilo. O ni ẹnu-ọna titẹsi kekere ati irọrun ti koodu kikọ, ṣugbọn ni akoko kanna, nigba idagbasoke awọn ohun elo ti o tobi pupọ, iṣẹ ṣiṣe ti ede le ma to.

O dara, apakan ikẹhin ti ohun elo wa - ojulowo julọ fun olumulo - Software ti o pese atọkun si eto miiran (frontend) - jẹ oju ohun elo rẹ; o wa pẹlu apakan yii ti olumulo ṣe ajọṣepọ taara.

Laisi lilọ sinu awọn alaye, iwaju iwaju ode oni duro lori awọn ọwọn mẹta, awọn ilana (ati kii ṣe pupọ), fun ṣiṣẹda awọn atọkun olumulo. Gegebi bi, awọn mẹta julọ gbajumo ni:

  • ReactJS kii ṣe ilana, ṣugbọn ile-ikawe kan. Lootọ, ilana naa yatọ si akọle igberaga rẹ nikan ni isansa ti diẹ ninu awọn iṣẹ “lati inu apoti” ati iwulo lati fi sori ẹrọ pẹlu ọwọ. Nitorinaa, awọn iyatọ pupọ wa ti “igbaradi” ti ile-ikawe yii, ti o ṣẹda awọn ilana alailẹgbẹ. O le jẹ iṣoro diẹ fun olubere kan, nitori diẹ ninu awọn ipilẹ ipilẹ, ati iṣeto ibinu pupọ ti agbegbe ile. Bibẹẹkọ, fun ibẹrẹ ni iyara, o le lo package “create-react-app” naa.
  • VueJS jẹ ilana fun kikọ awọn atọkun olumulo. Ninu Mẹtalọkan yii, o ni ẹtọ gba akọle ti ilana ore-olumulo julọ; fun idagbasoke ni Vue, idena fun titẹsi kere ju ti awọn arakunrin miiran ti a mẹnuba. Síwájú sí i, òun ni àbíkẹ́yìn láàárín wọn.
  • Angular ni a gba eka julọ ti awọn ilana wọnyi, ọkan nikan ti o nilo TypeScript (afikun-un fun ede Javascript). Nigbagbogbo lo lati kọ awọn ohun elo ile-iṣẹ nla.

Ni akopọ ohun ti a kọ loke, a le pinnu pe ni bayi gbigbe ohun elo kan yatọ yato si bii ilana yii ṣe tẹsiwaju tẹlẹ. Sibẹsibẹ, ko si ẹnikan ti o da ọ duro lati ṣe “imuṣiṣẹ” ni ọna aṣa atijọ. Ṣugbọn njẹ akoko diẹ ti o fipamọ ni ibẹrẹ tọ nọmba nla ti awọn aṣiṣe ti olupilẹṣẹ ti o yan ọna yii yoo ni lati tẹsiwaju? Mo gbagbo pe idahun ko si. Nipa lilo akoko diẹ diẹ sii lati mọ ararẹ pẹlu awọn irinṣẹ wọnyi (ati pe o ko nilo diẹ sii ju iyẹn lọ, nitori o nilo lati ni oye boya o nilo wọn ninu iṣẹ akanṣe rẹ lọwọlọwọ tabi rara), o le mu ṣiṣẹ jade, dinku ni pataki, fun apẹẹrẹ. , Awọn ọran ti awọn aṣiṣe iwin ti o da lori agbegbe ati pe o han nikan lori olupin iṣelọpọ, itupalẹ alẹ ti ohun ti o yori si jamba olupin ati idi ti kii yoo bẹrẹ, ati pupọ diẹ sii.

orisun: www.habr.com

Ra alejo gbigba igbẹkẹle fun awọn aaye pẹlu aabo DDoS, awọn olupin VPS VDS 🔥 Ra gbigbalejo oju opo wẹẹbu ti o gbẹkẹle pẹlu aabo DDoS, awọn olupin VPS VDS | ProHoster