Lisi siaki mo le fatuina ma le lolomiina o talosaga i luga ole laiga

Ina ia mafai ona fatuina lau lava upega tafaʻilagi i lo tatou taimi, e le lava le mafai ona atiaʻe. O se itu taua o le faʻatulagaina o meafaigaluega mo le faʻaogaina o talosaga, mataʻituina, faʻapea foʻi ma le puleaina ma le faʻatautaia o le siosiomaga o loʻo galue ai. A'o mou atu le taimi o le fa'aogaina o tusi lesona, e o'o lava i galuega laiti, e mafai e meafaigaluega fa'aautomatika ona maua ai fa'amanuiaga tino mai. A faʻapipiʻi "lima", e masani ona galo ia i tatou le faʻanofoina o se mea, mafaufau i lenei mea poʻo lena faʻailoga, faʻataʻitaʻi se suʻega galo, o lenei lisi e mafai ona faʻaauau mo se taimi umi.

O lenei tusiga e mafai ona fesoasoani ia i latou o loʻo naʻo le aʻoaʻoina o faʻavae o le fatuina o upega tafaʻilagi ma manaʻo e malamalama i sina mea itiiti e uiga i faʻamatalaga autu ma faʻasalalauga.

O lea la, o le fausiaina o talosaga e mafai lava ona vaevaeina i ni vaega se 2: o mea uma e fesoʻotaʻi ma le code code, ma mea uma e fesoʻotaʻi ma le siosiomaga o loʻo faʻatinoina ai lenei tulafono. O le numera o talosaga, i le isi itu, e vaevaeina foi i le code server (le tasi e tamoʻe i luga o le server, e masani lava: faʻamatalaga pisinisi, faʻatagaina, teuina o faʻamaumauga, ma isi), ma le code a le tagata faʻatau (le mea e taʻavale i luga o le masini a le tagata faʻaoga: masani. le atinaʻe, ma faʻatatau faʻatasi ma ia).

Tatou amata i le Aso Lulu.

O le faʻavae mo le faʻaogaina o soʻo se code, system, poʻo le polokalama o le Operating System, o lea o le a tatou vaʻavaʻai i faiga sili ona lauiloa i luga o le maketi talimalo ma tuʻuina atu ia i latou se faʻamatalaga puupuu:

Windows Server - tutusa Windows, ae i se fesuiaiga o le server. O nisi o galuega o loʻo maua i le kalani (masani) version o Windows e le o iai iinei, mo se faʻataʻitaʻiga, o nisi o auaunaga mo le aoina o fuainumera ma polokalama tutusa, ae o loʻo i ai se seti o mea aoga mo le pulega o fesoʻotaiga, polokalama faʻavae mo le faʻapipiʻiina o sapalai (web, ftp, ...). I se tulaga lautele, Windows Server e foliga pei o Windows masani, quacks pei o Windows masani, ae ui i lea, e 2 taimi e sili atu nai lo le masani masani. Ae ui i lea, talu ai o le ae faʻapipiʻiina le talosaga i luga o se tuʻufaʻatasiga / virtual server, o le tau mulimuli mo oe, e ui lava e mafai ona faʻateleina, e le taua. Talu ai ona o le Windows platform o loʻo nofoia se nofoaga lofituina i le maketi OS faʻatau, o lana lomiga faʻaumau o le a sili ona masani ai le tele o tagata faʻaoga.

Unix-faiga tutusa. O galuega faʻale-aganuʻu i nei faiga e le manaʻomia ai le i ai o se faʻataʻitaʻiga faʻataʻitaʻi masani, e ofoina atu i le tagata faʻaoga naʻo se faʻamafanafanaga e avea o se elemene pulea. Mo se tagata e leai se poto masani, galue i lenei faatulagaga e mafai ona faigata, naʻo le a le tau o le alu ese mai se tusitala tusitusiga e sili ona lauiloa i faʻamatalaga Vim, o se fesili e fesoʻotaʻi ma lenei ua uma ona mauaina le silia ma le 6 miliona vaaiga i le 1.8 tausaga. O faʻasalalauga autu (tusi) o lenei aiga o: Debian - o se tufatufa lauiloa, faʻasologa o pusa i totonu e taulaʻi tele ile LTS (Lagolago Umi - lagolago mo se taimi umi), lea e faʻaalia i se tulaga maualuga maualuga ma le mautu o le faiga ma afifi; Ubuntu - o loʻo i ai faʻasalalauga o afifi uma i totonu o latou lomiga fou, lea e ono aʻafia ai le mautu, ae faʻatagaina oe e faʻaogaina galuega e sau ma faʻamatalaga fou; Red Hat Enterprise Linux – OS, fa'atulagaina mo le fa'aogaina fa'apisinisi, e totogi, peita'i, e aofia ai le lagolago mai le au fa'atau polokalame, nisi o afifi fa'atau ma pusa aveta'avale; CentOS - puna tatala o se fesuiaiga o Red Hat Enterprise Linux, faʻaalia i le leai o ni afifi faʻapitoa ma lagolago.

Mo i latou o loʻo amata ona faʻatautaia lenei vaega, o laʻu fautuaga o faiga Windows Server, po o Ubuntu. Afai tatou te mafaufau i Windows, o lona uiga o le masani lea o le faiga, Ubuntu - sili atu le faapalepale i faʻafouga, ma i le isi itu, mo se faʻataʻitaʻiga, itiiti faʻafitauli pe a faʻalauiloa galuega i luga o tekinolosi e manaʻomia ai ni faʻamatalaga fou.

O lea la, i le faaiuga o le OS, seʻi o tatou agai atu i se seti o meafaigaluega e mafai ai ona e faʻapipiʻi (faʻapipiʻi), faʻafouina ma mataʻituina le tulaga o le talosaga poʻo ona vaega i luga o le 'auʻaunaga.

O le isi filifiliga taua o le tuʻuina lea o lau talosaga ma le 'auʻaunaga mo ia. I le taimi nei, o auala sili ona taatele e 3 auala:

  • Fa'afeiloa'i (tausia) se 'au'aunaga na o oe o le filifiliga pito sili lea ona fa'atupe, ae e tatau ona e fa'atonuina se IP fa'amaumau mai lau 'au'aunaga ina ia le suia e lau punaoa lona tuatusi i le taimi.
  • Totogi se Tu'u Tu'ufa'atasi (VDS) – ma fa'atonu tuto'atasi ma fua fa'atatau
  • Totogi (masani latou te tuʻuina atu ia te oe le avanoa e faʻataʻitaʻi ai le faʻaogaina o le faʻavae mo le leai o se totogi) mo se faʻasalaga i nisi o faʻasalalauga i luga o le ao, lea e masani ai le faʻataʻitaʻiga o le totogiina o punaoa faʻaaogaina. O sui sili ona taʻutaʻua o lenei taʻiala: Amazon AWS (latou te tuʻuina atu se tausaga e leai se totogi o le faʻaaogaina o auʻaunaga, ae faʻatasi ai ma le faʻatapulaʻaina masina), Google Cloud (latou te tuʻuina atu le $ 300 i le teugatupe, lea e mafai ona faʻaalu i le gasologa o le tausaga i luga o le cloud hosting services) , Yandex.Cloud (latou te tuʻuina atu 4000 rubles. mo le 2 masina), Microsoft Azure (tuʻu fua avanoa i auaunaga lauiloa mo le tausaga, + 12 rubles mo soʻo se auaunaga mo le masina e tasi). O le mea lea, e mafai ona e faʻataʻitaʻiina soʻo se tasi o nei auʻaunaga e aunoa ma le faʻaaluina o se sene, ae maua se manatu faʻatatau e uiga i le lelei ma le maualuga o le auaunaga na tuʻuina atu.

Faʻalagolago i le ala filifilia, na o le pau lava le mea o le a suia i le lumanaʻi o ai e tele nafa ma lenei poʻo lena vaega o le pulega. Afai e te faʻafeiloaʻi oe lava, e tatau ona e malamalama o soʻo se faʻalavelave i le eletise, le Initaneti, le server lava ia, le polokalama faʻapipiʻi i luga - o nei mea uma e taoto i luga o ou tauau. Ae ui i lea, mo aʻoaʻoga ma suʻega, e sili atu nai lo le lava.

Afai e leai sau masini faʻaopoopo e mafai ona taʻalo le sao o se 'auʻaunaga, ona e manaʻo lea e faʻaaoga le auala lona lua poʻo le tolu. O le mataupu lona lua e tutusa ma le muamua, sei vagana ai ua e suia le matafaioi mo le maua o le server ma lona mana i tauau o le talimalo. O le pulega o le server ma le polokalama o lo'o i lalo o lau pule.

Ma le mea mulimuli, o le filifiliga o le lisiina o le gafatia o le auʻaunaga ao. O iinei e mafai ona e setiina le pulea otometi toetoe lava o soʻo se mea e aunoa ma le alu i le tele o faʻamatalaga faʻapitoa. E le gata i lea, nai lo le tasi masini, e mafai ona e maua le tele o faʻataʻitaʻiga tutusa, lea e mafai, mo se faʻataʻitaʻiga, e nafa ma vaega eseese o le talosaga, ae e le tele se eseesega i le tau mai le umiaina o se server tuuto. Ma e le gata i lea, o loʻo i ai meafaigaluega mo le faʻapipiʻiina, containerization, faʻapipiʻiina otometi, faʻaauau le tuʻufaʻatasia ma sili atu! O le a tatou tilotilo i nisi o nei mea i lalo.

I se tulaga lautele, e foliga mai o le auʻaunaga faʻapitoa e pei o lenei: o loʻo i ai a matou "orchestrator" ("orchestration" o le faagasologa o le puleaina o le tele o faʻataʻitaʻiga), lea e pulea ai suiga o le siosiomaga i luga o se faʻataʻitaʻiga server, se pusa virtualization (filifiliga, ae fai lava si e masani ona faʻaaogaina), lea e mafai ai e oe ona vaevaeina le talosaga i ni mea faʻapitoa faʻapitoa, ma Continuous Integration software-faʻatagaina faʻafouga e faʻafeiloaʻi code e ala i "scripts."

O lea la, o le tuʻufaʻatasiga e mafai ai e oe ona vaʻai i le tulaga o 'auʻaunaga, taʻavale pe toe faʻafoʻi faʻafouga i le siosiomaga o le server, ma isi. I le taimi muamua, o lenei itu e le mafai ona aafia ai oe, talu ai ina ia mafai ona faʻatulagaina soʻo se mea, e te manaʻomia ni nai 'auʻaunaga (e mafai ona e maua se tasi, ae aisea e tatau ai?), Ma ina ia maua ni nai 'auʻaunaga, e te manaʻomia i latou. Faatasi ai ma meafaigaluega i lenei itu, o le sili ona lauiloa o Kubernetes, atiae e Google.

O le isi laasaga o le virtualization i le OS tulaga. I aso nei, o le manatu o le "dockerization" ua salalau lautele, lea e sau mai le meafaigaluega Docker, lea e tuʻuina atu ai le faʻaogaina o pusa e vavae ese mai le tasi i le isi, ae faʻalauiloaina i le tulaga o le tasi faiga faʻaogaina. O le a le uiga o lenei mea: i totonu o nei koneteina taʻitasi e mafai ona e faʻatautaia se talosaga, poʻo se seti o talosaga, lea o le a talitonu e naʻo i latou i le OS atoa, e aunoa ma le masalomia o le i ai o se isi tagata i lenei masini. O lenei galuega e aoga tele mo le faʻalauiloaina o faʻaoga tutusa o ituaiga eseese, pe naʻo le feteʻenaʻi o talosaga, faʻapea foʻi ma le vaevaeina o vaega o se talosaga i ni laulau. E mafai ona tusia mulimuli ane lenei laulau lafo i se ata, lea e mafai ona faʻaaogaina, mo se faʻataʻitaʻiga, e faʻapipiʻi ai se talosaga. O lona uiga, e ala i le faʻapipiʻiina o lenei ata ma le faʻapipiʻiina o pusa o loʻo i ai, e te maua ai se siosiomaga saunia mo le faʻaogaina o lau talosaga! I laasaga muamua, e mafai ona e faʻaogaina lenei meafaigaluega e lua mo faʻamatalaga faʻamatalaga ma ia maua ai ni faʻamanuiaga moni e ala i le vaevaeina o le faʻaoga faʻaoga i ni laulau eseese. Ae e taua le fai atu iinei e le o tagata uma e manaʻomia le faʻaogaina, ae le o taimi uma. Dockerization e tauamiotonuina i mataupu pe a "vaevaega" le talosaga, vaevaeina i ni vaega laiti, taʻitasi e nafa ma lana lava galuega, le mea e taʻua o le "microservice architecture".

E le gata i lea, i le faaopoopo atu i le tuʻuina atu o le siosiomaga, e manaʻomia le faʻamautinoaina o le faʻaogaina lelei o le talosaga, lea e aofia ai ituaiga uma o suiga code, faʻapipiʻiina o faletusi ma afifi e fesoʻotaʻi ma talosaga, suʻega suʻega, faʻamatalaga e uiga i nei gaioiga, ma isi. O iinei e tatau ona tatou gauai atu i se manatu e pei o le "Faʻaauauina Faʻatasi" (CI – Fa'aauau Fa'atasi). Основными инструментами в данной области на данный момент являются Jenkins (ПO для CI, написанное на Java, может показаться несколько сложным на старте), Travis C.I. (tusia i le Ruby, autu, fai si faigofie Jenkins, ae ui i lea, o loʻo manaʻomia pea le malamalama i le tulaga o le faʻatulagaina o faʻatulagaga), Gitlab CI (tusia i luga Ruby ma Alu).

O lea la, i le talanoa e uiga i le siosiomaga o le a galue ai lau talosaga, ua oʻo i le taimi e te vaʻavaʻai ai i mea faigaluega a le lalolagi faʻaonaponei e ofoina mai ia i tatou mo le fatuina o nei lava talosaga.

Sei o tatou amata i mea faavae: Backend (backend) - vaega o le server. O le filifiliga o le gagana, seti o galuega autu ma le faʻatulagaina muamua (faʻavae) iinei e fuafua lava i mea e fiafia i ai le tagata lava ia, ae ui i lea, e taua le taʻua mo le iloiloga (o le manatu o le tusitala e uiga i gagana e matua taua lava, e ui lava i se tagi. i se faʻamatalaga le faʻaituau):

  • O le Python o se gagana faauo mo se tagata le poto masani, e faʻamagaloina nisi o mea sese, ae e mafai foi ona matua faʻamaoni i le atinaʻe ina ia le faia se mea leaga. Ua leva ona fai se gagana matua ma anoa, lea na aliali mai i le 1991.
  • Alu - o se gagana mai Google, e fai si faauo ma faigofie, e faigofie tele ona faʻapipiʻi ma maua se faila faila i luga o soʻo se fausaga. E mafai ona faigofie ma manaia, pe mafai foi ona lavelave ma ogaoga. Fou ma talavou, na aliali mai talu ai nei, i le 2009.
  • Rust e fai si matua nai lo lana paaga muamua, na tatalaina i le 2006, ae e laʻititi lava pe a faʻatusatusa i ana tupulaga. Fa'atatau i tagata atina'e sili atu le poto masani, e ui lava o lo'o taumafai pea e foia le tele o galuega maualalo mo le tagata fai polokalame.
  • O Java o se tagata tuai o atinaʻe faʻapisinisi, na faʻalauiloaina i le 1995, ma o se tasi o gagana e masani ona faʻaaogaina i atinaʻe atinaʻe i aso nei. Faatasi ai ma ona manatu faavae ma le mamafa seti, o le taimi taʻavale e mafai ona avea ma luʻitau mo se tagata amata.
  • O le ASP.net o se faʻavae faʻavae talosaga na tuʻuina atu e Microsoft. Mo le tusiaina o galuega, o le C # gagana (fa'ailoa C Sharp), lea na fa'aalia i le 2000, e masani ona fa'aaogaina. O lona lavelave e fa'atusatusa i le tulaga i le va o Java ma Rust.
  • PHP, na fa'aaoga muamua mo le HTML preprocessing, i le taimi nei, e ui lava o lo'o umia le ta'ita'iga atoatoa i le maketi o gagana, o lo'o i ai se fa'agasologa i le fa'aitiitia o le fa'aoga. O lo'o i ai se tulaga maualalo e ulufale ai ma faigofie ona tusitusi code, ae i le taimi lava e tasi, pe a atia'e ni fa'aoga tetele, atonu e le lava le fa'atinoga o le gagana.

Ia, o le vaega mulimuli o la matou talosaga - o le mea sili ona faʻaogaina mo le tagata faʻaoga - Frontend (frontend) - o foliga o lau talosaga; o le vaega lea e fegalegaleai saʻo ai le tagata faʻaoga.

A aunoa ma le alu i faʻamatalaga, o le pito i luma faʻaonaponei o loʻo tu i luga o poutū e tolu, faʻavae (ma e le tele naua), mo le fatuina o fesoʻotaʻiga faʻaoga. E tusa ai, o le tolu sili ona lauiloa o:

  • ReactJS e le o se faʻavae, ae o se faletusi. O le mea moni, o le faʻavae e ese mai lona igoa faʻamaualuga naʻo le leai o nisi o galuega "mai le pusa" ma le manaʻoga e faʻapipiʻi ma le lima. O le mea lea, e tele fesuiaiga o le "sauniuniga" o lenei faletusi, faʻavaeina faʻavae tulaga ese. E mafai ona fai si faigata mo se tagata amata, ona o nisi o mataupu faavae, ma le faʻatonuina o le faʻatulagaina o le siosiomaga faufale. Ae ui i lea, mo se amataga vave, e mafai ona e faʻaogaina le pusa "create-react-app".
  • VueJS ose fa'avae mo le fausiaina o feso'ota'iga fa'aoga. O lenei tolutasi, e sa'o ai le igoa o le auivi sili ona faauo e faaaoga; mo le atinae i Vue, o le papupuni i le ulufale e maualalo ifo nai lo isi uso ua ta'ua. E lē gata i lea, o ia o le uii iā i latou.
  • O le Angular e sili ona lavelave o nei auivi, na'o le tasi e mana'omia TypeScript (faaopoopo mo le gagana Javascript). E masani ona faʻaaogaina e fausia ai pisinisi tetele.

I le aotelega o mea na tusia i luga, e mafai ona tatou faʻamaonia o le faʻaaogaina o se talosaga e matua ese lava mai le auala na faʻagasolo ai muamua. Ae ui i lea, e leai se tasi e taofia oe mai le faia o le "deployment" i le auala tuai. Ae pe o le taimi itiiti e faʻasaoina i le amataga e aoga le tele o mea sese e tatau ona laa i luga e se tagata faʻavae na te filifilia lenei ala? Ou te talitonu o le tali e leai. E ala i le faʻaaluina o sina taimi sili atu e faamasani ai oe i nei mea faigaluega (ma e te le manaʻomia se mea e sili atu nai lo lena, aua e tatau ona e malamalama pe e te manaʻomia i latou i lau galuega o loʻo i ai nei pe leai), e mafai ona e taʻalo, faʻaititia tele, mo se faʻataʻitaʻiga , mataupu o mea sese a le agaga e faʻatatau i le siosiomaga ma e faʻaalia naʻo luga o le gaosiga o meaʻai, auʻiliʻiliga i po o le a le mea na mafua ai le paʻu o le server ma pe aisea e le amataina ai, ma sili atu.

puna: www.habr.com

Faaopoopo i ai se faamatalaga