Amata i le tausaga talu ai, na amata ai e le matou kamupani ona faʻatulagaina hackathon. O le tauvaga muamua na matua manuia lava, na matou tusia ai i totonu
Na tuuina atu i tagata auai se galuega manaia ma le saolotoga atoatoa i le filifilia o se faaputuga tekinolosi mo lona faatinoga. Sa mana'omia le fa'atinoina o se faiga fa'ai'uga mo le fa'atinoina lelei o galuega fa'ailoga tagata fa'atau e mafai ona galulue fa'atasi ma se fa'agasolo vave o talosaga, tatalia uta mamafa, ma o le faiga lava ia e faigofie ona fa'asalaina.
O le galuega e le taua ma e mafai ona foia i le tele o auala, e pei ona matou talitonuina i le taimi o le faʻataʻitaʻiga o faʻamatalaga mulimuli o galuega faatino a le au auai. E 6 'au o le 5 tagata i le hackathon, o tagata uma na auai na i ai ni galuega lelei, ae o le matou faʻavae na sili atu ona tauva. E i ai la matou galuega sili ona manaia, lea ou te fia talanoa i ai i lenei tusiga.
O la matou fofo o se faʻavae e faʻavae i luga o le Serverless architecture i totonu o Kubernetes, lea e faʻaitiitia ai le taimi e aumai ai foliga fou i le gaosiga. E mafai ai e le au suʻesuʻe ona tusia tulafono i se siosiomaga talafeagai mo i latou ma faʻapipiʻi i le gaosiga e aunoa ma le auai o inisinia ma atinaʻe.
O le a le sikoa
Tinkoff.ru, pei o le tele o kamupani faʻaonaponei, o loʻo i ai sikoa tagata faʻatau. O le fa'ailoga ose faiga su'esu'e a tagata fa'atau e fa'atatau i metotia fa'afuainumera o su'esu'ega fa'amaumauga.
Mo se faʻataʻitaʻiga, e liliu mai se tagata faʻatau ia i matou ma se talosaga e tuʻuina atu ia te ia se nonogatupe, pe tatala se teugatupe a le tagata fai pisinisi ia i matou. Afai tatou te fuafua e tuʻuina atu ia te ia se nonogatupe, ona tatau lea ona tatou iloiloina lona solvency, ma afai o le teugatupe o se tagata fai pisinisi, e tatau ona tatou mautinoa o le a le faia e le kalani ni fefaʻatauaiga taufaasese.
O le fa'avae mo le faia o ia fa'ai'uga o fa'ata'ita'iga fa'a-matematika e fa'avasega uma fa'amaumauga mai le talosaga lava ia ma fa'amaumauga mai le matou teuina. E le gata i le fa'ailoga, e mafai fo'i ona fa'aoga metotia fa'afuainumera tutusa i le tautuaina o le fa'atupuina o fautuaga a le tagata lava ia mo oloa fou mo a tatou tagata fa'atau.
Ole auala ole su'esu'ega fa'apea e mafai ona talia le tele o fa'amaumauga tu'ufa'atasi. Ma i se taimi e mafai ona tatou faʻaopoopoina se parakalafa fou i le faʻaoga, lea, e faʻavae i luga o taunuuga o auʻiliʻiliga i luga o faʻamaumauga faʻasolopito, o le a faʻateleina ai le suiga o le faʻaaogaina o le auaunaga.
Matou te umia le tele o faʻamatalaga e uiga i fesoʻotaʻiga faʻatau, ma o le tele o nei faʻamatalaga o loʻo faʻatupulaia pea. Mo le fa'ailoga e galue ai, e mana'omia fo'i e le fa'asologa o fa'amaumauga ni tulafono (po'o fa'ata'ita'iga o le matematika) e mafai ai ona e vave filifili po'o ai e talia se talosaga, po'o ai e tete'e, ma po'o ai fo'i na te ofoina atu ni isi mea e lua, e iloilo ai lo latou fiafia.
Mo le galuega o loʻo i ai, ua uma ona matou faʻaogaina se faiga faʻapitoa e fai ai filifiliga
E tele fofo ua saunia i luga o le maketi, faʻataʻitaʻiga sikoa ma faiga faʻaiʻuga lava latou. Matou te faʻaaogaina se tasi o nei faiga i la matou kamupani. Ae o loʻo tuputupu aʻe le pisinisi, faʻavasegaina, faʻateleina le numera o tagata faʻatau ma le numera o oloa o loʻo ofoina atu, ma faʻatasi ai ma lenei mea, o loʻo aliaʻe mai ai manatu i auala e faʻaleleia ai le faiga o filifiliga o loʻo i ai nei. E mautinoa lava o tagata o loʻo galulue ma le faiga o loʻo i ai nei e tele manatu i le auala e faʻafaigofie ai, sili atu, sili atu ona faigofie, ae o nisi taimi o manatu mai fafo e aoga. O le New Hackathon na faʻatulagaina ma le faʻamoemoe o le aoina o manatu lelei.
Galuega
O le hackathon na faia i le aso 23 o Fepuari. Na ofoina atu i le au auai se galuega tau: ia atiaʻe se faiga e faia ai filifiliga e tatau ona ausia le tele o tulaga.
Na taʻu mai ia i matou pe faʻafefea ona faʻaogaina le faiga o loʻo i ai nei ma o a faʻafitauli e tulaʻi mai i le taimi o lona faʻagaioiga, faʻapea foʻi ma sini tau pisinisi e tatau ona tulituliloa e le atinaʻe. O le faiga e tatau ona i ai se taimi vave-i-maketi mo le atinaʻeina o tulafono ina ia mafai ai e le numera galue o tagata suʻesuʻe ona maua vave i le gaosiga. Ma mo le tafe mai o talosaga, o le taimi e fai ai faaiuga e tatau ona faʻaitiitia. E le gata i lea, o le faiga o loʻo atiaʻe e tatau ona i ai le gafatia faʻatau atu ina ia mafai ai ona tuʻuina atu i le tagata o tausia le avanoa e faʻatau ai isi oloa a le kamupani pe a faʻamaonia e matou ma e iai le manaʻoga mai le kalani.
E manino lava e le mafai ona tusia se poloketi sauni e tuʻuina atu i le po e mautinoa lava o le a alu i le gaosiga, ma e faigata tele ona ufiufi le faiga atoa, o lea na talosagaina ai i matou e faʻatino a itiiti ifo o se vaega. Na fa'amautu le tele o mana'oga e tatau i le fa'ata'ita'iga ona fa'amalieina. Na mafai ona taumafai uma e faʻatino uma manaʻoga i latou atoa, ma galue faʻapitoa i vaega taʻitasi o le faʻavae o loʻo atiaʻe.
Ae mo tekinolosi, o tagata uma na auai na tuʻuina atu i ai le saolotoga atoatoa e filifili ai. Na mafai ona faʻaaogaina soʻo se manatu ma tekinolosi: Faʻasalalau faʻamaumauga, aʻoaʻoga masini, faʻasologa o mea, faʻamatalaga tetele ma isi.
O la matou fofo
Ina ua uma sina manatu palepalealuga, na matou filifili ai o se fofo FaaS o le a lelei mo le faʻamaeʻaina o le galuega.
Mo lenei fofo, sa tatau ona maua se auivi talafeagai Serverless e faʻatino ai tulafono o le faiga o filifiliga o loʻo atiaʻe. Talu ai o Tinkoff faʻaaoga malosi Kubernetes mo le faʻatonutonuina o atinaʻe, matou te vaʻavaʻai i le tele o fofo ua saunia e faʻavae i luga; O le a ou faʻamatalaina atili ia te oe mulimuli ane.
Ina ia maua le fofo sili ona aoga, matou te tilotilo i le oloa o loʻo atiaʻe e ala i mata o ona tagata faʻaoga. O fa'aoga autu o la matou faiga o tagata su'esu'e o lo'o a'afia i le atina'eina o tulafono. O tulafono e tatau ona tuʻuina atu i le 'auʻaunaga, poʻo, e pei o la matou tulaga, faʻapipiʻiina i le ao, mo le faia o filifiliga mulimuli. Mai le va'aiga a se tagata su'esu'e, e fa'apea le faiga o galuega:
- E tusia e le tagata suʻesuʻe se tusitusiga, tulafono, poʻo le ML faʻataʻitaʻiga e faʻatatau i faʻamatalaga mai le fale teu oloa. I le avea ai o se vaega o le hackathon, na matou filifili e faʻaaoga Mongodb, ae o le filifiliga o le teuina o faʻamaumauga e le taua iinei.
- A maeʻa le suʻeina o tulafono faʻavae i luga o faʻamaumauga faʻasolopito, e tuʻuina atu e le tagata suʻesuʻe lana code i le admin panel.
- Ina ia faʻamautinoa le faʻaliliuina, o le a alu uma code i Git repositories.
- E ala atu i le vaega pule o le a mafai ai ona faʻapipiʻi le code i totonu o le ao e avea o se vaega e ese mai le Serverless galue.
O fa'amatalaga muamua mai tagata fa'atau e tatau ona pasi atu i se auaunaga Fa'atamaoaiga fa'apitoa ua fuafuaina e fa'atamaoaigaina le talosaga muamua ma fa'amaumauga mai le faleteuoloa. E taua le faʻatinoina o lenei 'auʻaunaga i se auala e mafai ai ona galue i se fale e tasi (mai le suʻega e ave faʻamaumauga pe a atiaʻe tulafono) e faʻamautu ai se faʻamaumauga tuʻufaʻatasia.
E oo lava i luma o le hackathon, na matou filifili i luga o le Serverless framework o le a matou faʻaaogaina. I aso nei o loʻo i ai le tele o tekinolosi i luga o le maketi o loʻo faʻaaogaina lenei auala. O fofo sili ona lauiloa i totonu o le fausaga Kubernetes o Fission, Open FaaS ma Kubeless. E iai lava
Ina ua uma ona fuaina uma le lelei ma le le lelei, sa matou filifili
Ina ia galue ma Fission, e tatau ona e malamalama i mataupu faavae e lua: galuega ma le siosiomaga. O se galuega o se fasi code ua tusia i se tasi o gagana o loʻo i ai se siosiomaga Fission.
E mafai fo'i e Fission ona fa'atino galuega e vaevaeina i ni faila, fa'apipi'i muamua i se fa'amaumauga. O le faʻaogaina o le Fission i totonu o le Kubernetes cluster e faʻamautinoa e pods faʻapitoa, lea e pulea e le faʻavae lava ia. Ina ia fegalegaleai ma fuifui pods, e tatau ona tuʻuina atu galuega taʻitasi i lona lava ala, ma e mafai ona e pasia GET parakalafa pe talosaga tino i le tulaga o se talosaga POST.
O le iʻuga, na matou fuafua e maua se fofo e mafai ai e le au suʻesuʻe ona faʻapipiʻi faʻasologa o tulafono e aunoa ma le auai o inisinia ma atinaʻe. O le auala fa'amatala ua fa'ate'aina ai fo'i le mana'oga mo tagata atia'e e toe tusi le fa'ailoga su'esu'e i se isi gagana. Mo se faʻataʻitaʻiga, mo le faiga o filifiliga o loʻo i ai nei matou te faʻaaogaina, e tatau ona matou tusia tulafono i tekinolosi faʻapitoa ma gagana, o le lautele e matua faʻatapulaʻaina, ma o loʻo i ai foi le faʻalagolago malosi i le server talosaga, talu ai o tulafono uma a le faletupe. o lo'o fa'apipi'iina i se si'osi'omaga e tasi. O se taunuuga, e faʻapipiʻi tulafono fou e manaʻomia le faʻasaʻolotoina o le polokalama atoa.
I la matou fofo fuafuaina, e leai se manaʻoga e faʻasaʻo tulafono; o le code e mafai ona faigofie ona faʻapipiʻiina i le kiliki o se ki. E le gata i lea, o le pulega o atinaʻe i Kubernetes e mafai ai ona e le mafaufau e uiga i le uta ma le faʻalauteleina; o ia faʻafitauli e foia mai le pusa. Ma o le faʻaaogaina o se fale teu oloa faʻamaumauga e tasi e faʻaumatia ai le manaʻoga e faʻatusatusa faʻamatalaga faʻamatalaga faʻatasi ma faʻamaumauga faʻasolopito, lea e faʻafaigofie ai le galuega a le tagata suʻesuʻe.
O mea na matou maua
Talu ai na matou o mai i le hackathon ma se fofo ua saunia (i o matou mafaufauga), na pau lava le mea e tatau ona matou faia o le liliu uma o matou mafaufauga i laina o code.
O le ki i le manuia i soʻo se hackathon o le sauniuni ma se fuafuaga tusitusia lelei. O le mea lea, o le mea muamua na matou faia o le filifili po oa modules o le a aofia ai le matou fausaga fausaga ma poʻo a tekinolosi matou te faʻaaogaina.
O le fausaga o la matou galuega faatino e faapea:
O lenei ata o loʻo faʻaalia ai ni mea e lua e ulufale ai, o le tagata suʻesuʻe (le faʻaoga autu o la matou polokalama) ma le tagata o tausia.
O le faʻagasologa o galuega e faʻatulagaina e pei o lenei. E fa'atupuina e le tagata su'esu'e se galuega fa'atonutonu ma se galuega fa'atamaoaigaina o fa'amaumauga mo lana fa'ata'ita'iga, teu lana fa'ailoga i totonu o le faleteuoloa Git, ma fa'apipi'i lana fa'ata'ita'iga i le ao e ala i le talosaga a le pule. Sei o tatou mafaufau pe faʻafefea ona valaʻau le galuega faʻatulagaina ma fai filifiliga i luga o talosaga o loʻo oʻo mai mai tagata faʻatau:
- E fa'atumu e le kalani se pepa i luga o le upega tafa'ilagi ma lafo lana talosaga i le pule. O se talosaga e mana'omia ona fai ai se fa'ai'uga e o'o mai i le fa'aogaina o le system ma fa'amaumau i totonu o fa'amaumauga i lona tulaga muamua.
- O le isi, o le talosaga mata'utia e lafo mo le fa'atamaoaigaina, pe a mana'omia. E mafai ona e fa'aopoopoina le talosaga muamua i fa'amaumauga mai auaunaga i fafo ma mai le teuina. Ole su'esu'ega fa'atamaoaigaina e maua o lo'o teuina fo'i ile fa'amaumauga.
- Ua fa'alauiloa le galuega su'esu'e, lea e mana'omia ai se fesili fa'atamaoaigaina e fai ma fa'aoga ma maua ai se fofo, lea e tusia fo'i i le teuina.
Na matou filifili e faʻaoga MongoDB o se teuina i totonu o la matou polokalama ona o le teuina o faʻamaumauga o faʻamaumauga i le tulaga o pepa JSON, talu ai o auaunaga faʻatamaoaigaina, e aofia ai le uluai talosaga, faʻapipiʻi faʻamaumauga uma e ala i le REST controllers.
O lea la, e XNUMX itula e fa'atino ai le tulaga. Na matou tufatufaina atu ma le manuia; o tagata taʻitoʻatasi o le 'au e iai lana lava vaega o le matafaioi i la matou poloketi:
- Front-end admin panels mo le galuega a le tagata su'esu'e, lea e mafai ai ona ia siiina mai tulafono mai le faiga o le fa'atonutonuina o fa'asologa o tusitusiga tusitusia, filifili filifiliga mo le fa'atamaoaigaina o fa'amatalaga fa'aoga ma fa'asa'o tulafono tusitusia luga o le initaneti.
- Fa'atonu pito i tua, e aofia ai le REST API mo le pito i luma ma fa'atasi ma VCS.
- Fa'atūina atina'e ile Google Cloud ma atina'e se auaunaga mo le fa'atamaoaigaina o fa'amaumauga.
- O se module mo le tu'ufa'atasia o le admin application ma le Serverless framework mo le fa'atulagaina mulimuli ane o tulafono.
- Faʻamatalaga o tulafono mo le suʻeina o le faʻatinoga o le faiga atoa ma le tuʻufaʻatasia o auʻiliʻiliga i luga o talosaga o loʻo oʻo mai (faʻaiʻuga faia) mo le faʻataʻitaʻiga mulimuli.
Tatou amata i le faasologa.
O la matou pito i luma na tusia i le Angular 7 e faʻaaoga ai le Faletupe UI Kit. O le vaega mulimuli o le admin panel e pei o lenei:
Talu ai sa itiiti se taimi, sa matou taumafai e faʻatino naʻo le faʻatinoga autu. Ina ia faʻapipiʻi se galuega i totonu o le Kubernetes cluster, sa tatau ona filifili se mea na tupu (se auaunaga e manaʻomia ai le faʻatulagaina o se tulafono i le ao) ma le faʻailoga o le galuega e faʻatino ai le faʻatonuga o filifiliga. Mo le faʻapipiʻiina o se tulafono mo le tautua filifilia, matou tusia se ogalaau o lenei mea na tupu. I le admin panel e mafai ona e va'ai i ogalaau o mea uma na tutupu.
O faʻamaumauga uma o galuega sa teuina i totonu o se faleoloa Git mamao, lea e tatau foʻi ona faʻapipiʻi i le admin panel. I le faʻaliliuina o le code, o galuega uma na teuina i lala eseese o le fale teu oloa. E tuʻuina atu foʻi e le admin panel le tomai e faia ai fetuunaiga i tusitusiga tusitusia, ina ia le mafai ona faʻapipiʻiina se galuega i le gaosiga, e le gata e mafai ona e siakiina le code tusitusia, ae faia foi suiga talafeagai.
I le faʻaopoopoga i tulafono faʻavae, matou te faʻatinoina foi le mafai ona faʻatamaoaigaina faʻamatalaga faʻamatalaga e faʻaaoga ai galuega Faʻatamaoaigaina, o le code o loʻo i ai foi ma tusitusiga lea na mafai ai ona alu i le faleteuoloa faʻamaumauga, valaʻau auaunaga a isi vaega ma faia faʻatatauga muamua. . Ina ia faʻaalia la matou fofo, matou te fuafuaina le faʻailoga o le zodiac a le kalani na tuʻua le talosaga ma faʻamautu lana telefoni feaveaʻi e faʻaaoga ai se isi vaega REST auaunaga.
O le pito i tua o le faʻavae na tusia i Java ma faʻatinoina o se Spring Boot application. Na matou fuafua muamua e faʻaoga Postgres e teu ai faʻamatalaga faʻamatalaga, ae, i le avea ai o se vaega o le hackathon, na matou filifili e faʻatapulaʻa i matou i se H2 faigofie ina ia faʻasaoina le taimi. I le pito i tua, o le tuʻufaʻatasia ma Bitbucket na faʻatinoina e faʻaliliu ai galuega faʻatamaoaigaina fesili ma tulafono tusitusi. Mo le tuʻufaʻatasia ma faleoloa mamao Git, matou faʻaaogaina
Ina ia faʻatinoina lo matou manatu, matou te manaʻomia atinaʻe talafeagai. Na matou filifili e faʻapipiʻi la matou kulupu Kubernetes i le ao. O la matou filifiliga o le Google Cloud Platform. O le Fission serverless framework na faʻapipiʻiina i luga o le Kubernetes cluster, lea na matou faʻaogaina i Gcloud. I le taimi muamua, na faʻatinoina le auaunaga faʻatamaoaigaina o faʻamatalaga e avea o se isi Java talosaga na afifi i totonu o le Pod i totonu o le k8s cluster. Ae ina ua maeʻa se faʻataʻitaʻiga muamua o la matou poloketi i le ogatotonu o le hackathon, na fautuaina i matou e faʻafaigofie le auaunaga Faʻatamaoaigaina e maua ai le avanoa e filifili ai pe faʻafefea ona faʻatamaoaigaina faʻamatalaga mataʻutia o talosaga o loʻo oʻo mai. Ma e leai sa matou filifiliga ae ia faia le auaunaga faʻatamaoaigaina e leai foi se Server.
Ina ia galulue ma Fission, matou te faʻaaogaina le Fission CLI, lea e tatau ona faʻapipiʻi i luga o le Kubernetes CLI. O le tuʻuina atu o galuega i totonu o le k8s cluster e faigofie lava; naʻo lou manaʻomia o le tuʻuina atu o se auala i totonu ma ulufale i le galuega e faʻataga ai feoaiga pe a manaʻomia le avanoa i fafo atu o le fuifui. O le fa'atulagaina o se galuega e tasi e masani lava e le sili atu i le 10 sekone.
Fa'ai'uga folasaga o le poloketi ma le aotelega
Ina ia faʻaalia le faʻaogaina o le matou polokalama, ua matou tuʻuina se pepa faigofie i luga o se server mamao e mafai ai ona e tuʻuina atu se talosaga mo se tasi o oloa a le faletupe. Ina ia talosaga, e tatau ona e tusia au mataitusi, aso fanau ma le numera telefoni.
O faʻamatalaga mai le fomu kalani na alu i le pule, lea na tuʻuina atu i le taimi lava e tasi talosaga mo tulafono uma o loʻo avanoa, i le faʻatamaoaigaina muamua o faʻamatalaga e tusa ai ma tulaga faʻapitoa, ma faʻasaoina i latou i se teuina masani. I le aotelega, sa matou fa'atinoina galuega e tolu e fai ai fa'ai'uga i talosaga o lo'o o'o mai ma 4 auaunaga fa'atamaoaigaina o fa'amaumauga. Ina ua uma ona tuʻuina atu le talosaga, na maua e le kalani la matou faʻaiuga:
I le faaopoopo atu i le teena poʻo le faʻatagaina, na maua foi e le kalani se lisi o isi oloa, talosaga na matou lafoina tutusa. O le auala lea na matou faʻaalia ai le avanoa e faʻatau atu ai i luga o la matou tulaga.
E 3 le aofa'i o oloa fa'atauva'a na maua:
- Fa'aaitalafu.
- Toga
- mokesi.
I le taimi o le faʻataʻitaʻiga, sa matou faʻapipiʻiina galuega saunia ma faʻamaumauga faʻatamaoaigaina mo auaunaga taʻitasi.
E mana'omia e tulafono ta'itasi lana lava seti o fa'amaumauga tu'ufa'atasi. O lea la, ina ia faʻamaonia se mokesi, matou te fuafuaina le faʻailoga o le zodiac a le kalani ma faʻafesoʻotaʻi lenei mea ma le faʻaogaina o le kalena masina. Ina ia faʻamaonia se meataalo, na matou siakiina o le kalani ua oʻo i le matua o le matua, ma tuʻuina atu se nonogatupe, matou te lafoina se talosaga i se auaunaga tatala fafo mo le fuafuaina o le telefoni feaveaʻi, ma faia ai se faaiuga.
Sa matou taumafai e fa'afiafia ma fegalegaleai la matou fa'aaliga, e mafai e tagata uma o lo'o auai ona o atu i la matou fomu ma siaki le avanoa oa matou auaunaga talafatu ia i latou. Ma i le faaiuga o le faʻaaliga, matou faʻaalia auʻiliʻiliga o talosaga na maua, lea na faʻaalia ai le toʻatele o tagata na faʻaaogaina la matou auaunaga, numera o faʻatagaga, ma le teena.
Ina ia aoina auʻiliʻiliga i luga ole laiga, sa matou faʻapipiʻiina foʻi se meafaigaluega faʻapitoa BI
O se taunuuga, na matou maua se faʻataʻitaʻiga lelei o se faʻavae fai filifiliga, ma i le taimi o le faʻataʻitaʻiga, e mafai e le au faʻalogologo taʻitoʻatasi ona siaki le faʻatinoga. O se fofo manaia, o se faʻataʻitaʻiga maeʻa ma se faʻataʻitaʻiga manuia na mafai ai ona matou manumalo, e ui lava i le malosi o tauvaga mai isi 'au. Ou te mautinoa e mafai foi ona tusia se tala manaia i luga o galuega faatino a au taitasi.
puna: www.habr.com