Yuav ua li cas peb tsim lub hauv paus ntawm Alfa-Bank kev nqis peev ua lag luam raws li Tarantool

Yuav ua li cas peb tsim lub hauv paus ntawm Alfa-Bank kev nqis peev ua lag luam raws li Tarantool
Tseem los ntawm zaj duab xis "Peb Lub Ntiaj Teb Secret: Lub Neej zais ntawm Cell"

Kev lag luam peev yog ib qho nyuaj tshaj plaws hauv kev lag luam hauv ntiaj teb, vim tias tsis yog tsuas yog qiv nyiaj, qiv nyiaj thiab tso nyiaj, tab sis kuj muaj kev nyab xeeb, nyiaj txiag, cov khoom lag luam, derivatives thiab txhua yam kev nyuaj ntawm cov khoom tsim.

Tsis ntev los no, peb tau pom qhov nce ntawm kev paub txog nyiaj txiag ntawm cov pej xeem. Ntau thiab ntau tus neeg tau koom nrog kev lag luam hauv kev lag luam kev nyab xeeb. Cov peev nyiaj ntawm tus kheej tau tshwm sim tsis ntev dhau los. Lawv tso cai rau koj mus pauv cov kev lag luam kev nyab xeeb thiab tau txais kev txiav se tawm lossis zam kev them se. Thiab txhua tus neeg siv khoom uas tuaj rau peb xav tswj hwm lawv cov ntaub ntawv thiab pom kev tshaj tawm hauv lub sijhawm. Ntxiv mus, feem ntau cov ntaub ntawv no yog ntau yam khoom, uas yog, tib neeg yog cov neeg siv khoom ntawm ntau yam kev lag luam.

Tsis tas li ntawd, cov kev xav tau ntawm cov neeg tswj hwm, ob qho tib si Lavxias teb sab thiab txawv teb chaws, tab tom loj hlob.

Txhawm rau ua kom tau raws li qhov xav tau tam sim no thiab tsim lub hauv paus rau kev hloov kho yav tom ntej, peb tau tsim cov peev txheej lag luam raws li Tarantool.

Qee qhov txheeb cais. Alfa-Bank kev lag luam peev muab kev pabcuam brokerage rau cov tib neeg thiab cov koomhaum raug cai los muab lub sijhawm rau kev lag luam ntawm ntau lub khw muag khoom lag luam, kev pabcuam kev tso nyiaj rau kev khaws cia kev nyab xeeb, kev pabcuam kev ntseeg siab rau cov tib neeg uas muaj peev txheej ntiag tug thiab cov peev txheej loj, cov kev pabcuam muab kev nyab xeeb rau lwm lub tuam txhab. . Alfa-Bank kev lag luam peev suav nrog ntau dua 3 txhiab quotes ib ob, uas tau rub tawm los ntawm ntau lub lag luam platforms. Thaum lub sij hawm ua hauj lwm hnub, ntau tshaj 300 txhiab kev lag luam tau xaus rau ntawm kev lag luam sawv cev ntawm lub txhab nyiaj lossis nws cov neeg siv khoom. Txog li 5 txhiab kev txiav txim tua ib ob tshwm sim ntawm sab nraud thiab sab hauv platforms. Nyob rau tib lub sijhawm, txhua tus neeg siv khoom, sab hauv thiab sab nraud, xav pom lawv txoj haujlwm hauv lub sijhawm.

prehistory

Ib qhov chaw txij thaum pib xyoo 2000s, peb thaj chaw ntawm kev lag luam peev tsim tawm ntawm nws tus kheej: kev pauv pauv, kev pabcuam brokerage, kev lag luam txiaj, kev lag luam hauv khw muag khoom hauv kev nyab xeeb thiab ntau yam khoom siv. Yog li ntawd, peb tau poob rau hauv lub ntxiab ntawm cov dej ua haujlwm. Nws yog dab tsi? Txhua kab ntawm kev lag luam muaj nws tus kheej lub tshuab uas sib npaug ntawm ib leeg ua haujlwm. Txhua qhov system muaj nws tus kheej cov ntaub ntawv qauv, txawm hais tias lawv ua haujlwm nrog tib lub tswv yim: kev lag luam, cov cuab yeej, cov neeg sib tw, cov lus hais, thiab lwm yam. Thiab raws li txhua qhov kev hloov pauv ntawm nws tus kheej, muaj ntau yam zoo ntawm technologies tshwm sim.

Tsis tas li ntawd, cov cai hauv paus ntawm cov kab ke twb dhau los lawm, vim tias qee cov khoom lag luam pib nyob rau nruab nrab-1990s. Thiab hauv qee qhov chaw no ua rau qeeb ntawm txoj kev txhim kho, thiab muaj teeb meem kev ua haujlwm.

Yuav tsum muaj kev daws teeb meem tshiab

Cov lag luam tau pom tias kev hloov pauv thev naus laus zis yog qhov tseem ceeb rau kev txhim kho ntxiv. Peb tau txais cov haujlwm:

  1. Sau tag nrho cov ntaub ntawv lag luam hauv ib qho, ceev ceev thiab hauv ib qho qauv ntaub ntawv.
  2. Peb yuav tsum tsis txhob poob lossis hloov cov ntaub ntawv no.
  3. Nws yog ib qho tsim nyog los hloov cov ntaub ntawv, vim hais tias thaum twg los tau lub regulator yuav nug cov txheeb cais rau xyoo dhau los.
  4. Peb yuav tsum tsis yog nqa qee qhov tshiab, zam DBMS, tab sis tsim lub platform rau kev daws teeb meem kev lag luam.

Tsis tas li ntawd, peb architects teem lawv tus kheej tej yam kev mob:

  1. Cov kev daws teeb meem tshiab yuav tsum yog kev lag luam-chav kawm, uas yog, nws yuav tsum tau sim hauv qee lub tuam txhab loj.
  2. Txoj kev daws teeb meem kev ua haujlwm yuav tsum yog lub luag haujlwm tseem ceeb. Qhov no txhais tau tias peb yuav tsum muaj nyob rau hauv ntau lub chaw cov ntaub ntawv ib txhij thiab calmly ciaj sia nyob rau hauv lub outage ntawm ib tug data center.
  3. Lub system yuav tsum tau horizontally scalable. Qhov tseeb yog tias tag nrho peb cov tshuab tam sim no tsuas yog vertically scalable, thiab peb twb tau tsoo lub qab nthab vim qhov kev loj hlob tsawg ntawm cov khoom siv fais fab. Yog li ntawd, lub sijhawm tau los txog thaum peb yuav tsum muaj kab rov tav scalable system kom ciaj sia.
  4. Ntawm lwm yam, peb tau hais tias cov tshuaj yuav tsum pheej yig.

Peb ua raws li tus txheej txheem txoj kev: peb tsim cov kev cai thiab hu rau lub chaw yuav khoom. Los ntawm qhov ntawd peb tau txais cov npe ntawm cov tuam txhab uas, feem ntau, npaj ua qhov no rau peb. Peb tau hais rau sawv daws txog qhov teeb meem, thiab tau txais kev ntsuam xyuas ntawm cov kev daws teeb meem los ntawm rau ntawm lawv.

Nyob rau hauv lub txhab nyiaj, peb tsis coj leej twg lo lus rau nws; peb nyiam sim txhua yam peb tus kheej. Yog li ntawd, qhov yuav tsum tau ua ntawm peb qhov kev sib tw sib tw yog kom dhau qhov kev xeem thauj khoom. Peb tsim cov haujlwm ua haujlwm thauj khoom, thiab peb ntawm rau lub tuam txhab tau pom zoo los siv cov qauv kev daws teeb meem raws li cov thev naus laus zis hauv lub cim xeeb ntawm lawv tus kheej cov nqi txhawm rau sim nws.

Kuv yuav tsis qhia koj li cas peb tau sim txhua yam thiab siv sijhawm ntev npaum li cas, kuv tsuas yog piav qhia: qhov ua tau zoo tshaj plaws hauv kev ntsuas kev thauj khoom tau qhia los ntawm cov qauv kev daws teeb meem raws li Tarantool los ntawm pab pawg tsim kho Mail.ru Group. Peb tau kos npe rau daim ntawv cog lus thiab pib txhim kho. Muaj plaub tus neeg los ntawm Mail.ru Group, thiab los ntawm Alfa-Bank muaj peb tus neeg tsim khoom, peb tus kws tshuaj ntsuam xyuas, tus kws tsim qauv daws teeb meem, tus tswv khoom thiab tus tswv Scrum.

Tom ntej no kuv yuav qhia koj txog seb peb lub cev loj hlob li cas, nws hloov zuj zus, peb tau ua dab tsi thiab vim li cas qhov no.

Kev loj hlob

Thawj lo lus nug uas peb nug peb tus kheej yog yuav ua li cas kom tau txais cov ntaub ntawv los ntawm peb cov tshuab tam sim no. Peb txiav txim siab tias HTTP yog qhov tsim nyog rau peb, vim tias txhua lub tshuab tam sim no sib txuas lus nrog ib leeg los ntawm kev xa XML lossis JSON hla HTTP.

Peb siv HTTP server ua rau hauv Tarantool vim tias peb tsis tas yuav txiav SSL ntu, thiab nws qhov kev ua tau zoo txaus rau peb.

Raws li kuv twb tau hais lawm, tag nrho peb lub tshuab nyob hauv cov qauv ntaub ntawv sib txawv, thiab ntawm cov tswv yim peb yuav tsum coj cov khoom mus rau cov qauv uas peb piav qhia peb tus kheej. Ib hom lus xav tau uas tso cai rau cov ntaub ntawv hloov pauv. Peb xaiv qhov tseem ceeb Lua. Peb khiav tag nrho cov ntaub ntawv hloov dua siab tshiab code hauv sandbox - qhov no yog qhov chaw nyab xeeb tshaj qhov uas khiav code tsis mus. Txhawm rau ua qhov no, peb tsuas yog rub tawm cov lej uas xav tau, tsim ib puag ncig nrog cov haujlwm uas tsis tuaj yeem thaiv lossis poob dab tsi.

Yuav ua li cas peb tsim lub hauv paus ntawm Alfa-Bank kev nqis peev ua lag luam raws li Tarantool
Tom qab hloov dua siab tshiab, cov ntaub ntawv yuav tsum tau kuaj xyuas kom ua raws li tus qauv peb tsim. Peb tau sib tham ntev ntev tias tus qauv yuav tsum yog thiab hom lus twg los piav qhia nws. Peb xaiv Apache Avro vim hais tias cov lus yooj yim thiab nws muaj kev txhawb nqa los ntawm Tarantool. Cov qauv tshiab ntawm cov qauv thiab kev cai code tuaj yeem muab tso rau hauv kev ua haujlwm ntau zaus hauv ib hnub, txawm tias nyob rau hauv kev thauj khoom lossis tsis muaj, txhua lub sijhawm ntawm hnub, thiab hloov pauv sai heev.

Yuav ua li cas peb tsim lub hauv paus ntawm Alfa-Bank kev nqis peev ua lag luam raws li Tarantool
Tom qab kuaj xyuas, cov ntaub ntawv yuav tsum tau khaws cia. Peb ua qhov no siv vshard (peb muaj geo-dispersed replicas ntawm shards).

Yuav ua li cas peb tsim lub hauv paus ntawm Alfa-Bank kev nqis peev ua lag luam raws li Tarantool
Ntxiv mus, qhov tshwj xeeb yog xws li tias feem ntau cov tshuab xa peb cov ntaub ntawv tsis saib xyuas seb peb tau txais lossis tsis tau. Tias yog vim li cas peb tau ua raws li kev kho kab ke txij thaum pib. Nws yog dab tsi? Yog tias vim li cas ib qho khoom tsis tau txais cov ntaub ntawv hloov pauv lossis kev pov thawj, peb tseem lees paub qhov tau txais, tab sis tib lub sijhawm khaws cov khoom hauv cov kab kho. Nws zoo ib yam thiab nyob rau hauv lub lag luam tseem ceeb cov ntaub ntawv warehouse. Peb tam sim ntawd sau tus thawj coj interface rau nws, ntau yam kev ntsuas thiab kev ceeb toom. Yog li ntawd, peb tsis poob cov ntaub ntawv. Txawm hais tias ib yam dab tsi tau hloov pauv hauv qhov chaw, yog tias cov qauv ntaub ntawv tau hloov pauv, peb yuav pom nws tam sim ntawd thiab tuaj yeem hloov kho.

Yuav ua li cas peb tsim lub hauv paus ntawm Alfa-Bank kev nqis peev ua lag luam raws li Tarantool
Tam sim no koj yuav tsum kawm yuav ua li cas rov qab tau cov ntaub ntawv khaws tseg. Peb ua tib zoo txheeb xyuas peb lub tshuab thiab pom tias cov pawg classic ntawm Java thiab Oracle yuav tsum muaj qee yam ORM uas hloov cov ntaub ntawv los ntawm kev sib raug zoo rau cov khoom. Yog li vim li cas ho tsis muab cov khoom tam sim ntawd rau cov tshuab hauv daim duab? Yog li peb zoo siab txais yuav GraphQL, uas ua tau raws li txhua yam peb xav tau. Nws tso cai rau koj kom tau txais cov ntaub ntawv hauv daim duab thiab rub tawm tsuas yog yam koj xav tau tam sim no. Koj tuaj yeem txawm version API nrog ntau qhov yooj.

Yuav ua li cas peb tsim lub hauv paus ntawm Alfa-Bank kev nqis peev ua lag luam raws li Tarantool
Yuav luag tam sim ntawd peb pom tau hais tias cov ntaub ntawv peb tau muab rho tawm tsis txaus. Peb tsim cov haujlwm uas tuaj yeem txuas rau cov khoom hauv cov qauv - qhov tseem ceeb, suav teb. Ntawd yog, peb txuas ib qho kev ua haujlwm rau thaj chaw, uas, piv txwv li, suav cov nqe lus nruab nrab. Thiab cov neeg siv khoom sab nraud uas thov cov ntaub ntawv tseem tsis tau paub tias qhov no yog kev suav teb.

Yuav ua li cas peb tsim lub hauv paus ntawm Alfa-Bank kev nqis peev ua lag luam raws li Tarantool
Tau txais kev lees paub qhov system.

Yuav ua li cas peb tsim lub hauv paus ntawm Alfa-Bank kev nqis peev ua lag luam raws li Tarantool
Tom qab ntawd peb pom tias ob peb lub luag haujlwm crystallized hauv peb qhov kev txiav txim siab. Lub luag haujlwm yog ib hom kev sib sau ua haujlwm. Feem ntau, lub luag haujlwm muaj cov khoom siv sib txawv:

  • T-Connect: tuav cov kev sib txuas nkag, CPU txwv, tsis nco qab noj, tsis muaj neeg nyob.
  • IB-Core: hloov cov ntaub ntawv nws tau txais los ntawm Tarantool raws tu qauv, uas yog, nws ua haujlwm nrog cov ntxhuav. Nws kuj tsis khaws lub xeev thiab yog scalable.
  • Cia: tsuas yog khaws cov ntaub ntawv, tsis siv cov logic. Lub luag haujlwm no siv cov interfaces yooj yim tshaj plaws. Scalable ua tsaug rau vshard.

Yuav ua li cas peb tsim lub hauv paus ntawm Alfa-Bank kev nqis peev ua lag luam raws li Tarantool
Ntawd yog, siv lub luag haujlwm, peb tau txiav ntau qhov sib txawv ntawm pawg los ntawm ib leeg, uas tuaj yeem ntsuas nws tus kheej ntawm ib leeg.

Yog li, peb tau tsim ib qho asynchronous pauv cov ntaub ntawv ntws cov ntaub ntawv kaw tseg thiab kho kab ke nrog tus admin interface. Cov ntaubntawv povthawj siv yog asynchronous los ntawm kev lag luam kev pom: yog tias peb tau lees tias yuav sau cov ntaub ntawv rau peb tus kheej, tsis hais qhov twg, ces peb yuav lees paub nws. Yog tias nws tsis tau lees paub, ces ib yam dab tsi mus tsis ncaj ncees lawm thiab cov ntaub ntawv yuav tsum tau xa. Qhov no yog lub asynchronous kaw.

Kev Ntsuam Xyuas

Los ntawm qhov pib ntawm qhov project, peb txiav txim siab tias peb yuav sim ua qhov kev sim tsav kev txhim kho. Peb sau cov ntawv xeem hauv Lua siv tarantool / kais lub moj khaum, thiab kev sib koom ua ke hauv Python siv pytest moj khaum. Nyob rau tib lub sijhawm, peb koom nrog ob tus tsim tawm thiab cov kws tshuaj ntsuam hauv kev sau ntawv kev sib koom ua ke.

Peb siv qhov kev sim tsav kev txhim kho li cas?

Yog tias peb xav tau qee qhov tshiab, peb sim sau ib qho kev sim rau nws ua ntej. Thaum peb pom cov kab laum, peb nco ntsoov sau ib qho kev sim ua ntej, thiab tom qab ntawd kho nws. Thaum xub thawj nws nyuaj rau kev ua haujlwm zoo li no, muaj kev nkag siab tsis zoo ntawm cov neeg ua haujlwm, txawm tias muaj kev puas tsuaj: "Cia li kho tam sim no, ua qee yam tshiab, thiab tom qab ntawd npog nrog kev sim." Tsuas yog qhov no "tom qab" yuav luag tsis tuaj.

Yog li ntawd, koj yuav tsum yuam koj tus kheej kom sau cov ntawv xeem ua ntej thiab hais kom lwm tus ua. Ntseeg kuv, kev sim tsav kev txhim kho coj cov txiaj ntsig txawm tias nyob rau lub sijhawm luv. Koj yuav xav tias koj lub neej tau yooj yim dua. Peb xav tias 99% ntawm cov cai tam sim no raug them los ntawm kev xeem. Qhov no zoo li ntau, tab sis peb tsis muaj teeb meem: kev sim khiav ntawm txhua qhov kev cog lus.

Txawm li cas los xij, qhov peb nyiam tshaj plaws yog qhov kev sim thauj khoom; peb suav tias yog qhov tseem ceeb tshaj plaws thiab nqa tawm tsis tu ncua.

Kuv mam li qhia koj me ntsis txog yuav ua li cas peb tau ua thawj theem ntawm kev kuaj xyuas ntawm ib qho ntawm thawj versions. Peb tau teeb tsa lub kaw lus ntawm tus tsim tawm lub laptop, tig rau lub nra thiab tau txais 4 txhiab kev hloov pauv ib ob. Cov txiaj ntsig zoo rau lub laptop. Peb tau nruab nws ntawm lub rooj zaum virtual ntawm plaub lub servers, tsis muaj zog dua li hauv kev tsim khoom. Deployed mus rau qhov tsawg kawg nkaus. Peb khiav nws, thiab peb tau txais qhov tshwm sim phem dua li ntawm lub laptop hauv ib txoj xov. Cov ntsiab lus poob siab.

Peb tu siab heev. Peb saib ntawm server load, tab sis nws hloov tawm tias lawv tsis ua haujlwm.

Yuav ua li cas peb tsim lub hauv paus ntawm Alfa-Bank kev nqis peev ua lag luam raws li Tarantool
Peb hu cov neeg tsim khoom, thiab lawv piav qhia rau peb, cov neeg tuaj ntawm lub ntiaj teb ntawm Java, tias Tarantool yog ib txoj xov. Nws tsuas tuaj yeem siv tau zoo los ntawm ib qho processor core hauv qab thauj khoom. Tom qab ntawd peb tau xa mus rau qhov siab tshaj plaws ntawm Tarantool piv txwv ntawm txhua tus neeg rau zaub mov, tig rau ntawm lub nra thiab twb tau txais 14,5 txhiab kev hloov pauv ib ob.

Yuav ua li cas peb tsim lub hauv paus ntawm Alfa-Bank kev nqis peev ua lag luam raws li Tarantool
Cia kuv piav ntxiv. Vim muaj kev faib ua cov luag haujlwm uas siv cov peev txheej sib txawv, peb lub luag haujlwm yog lub luag haujlwm rau kev sib txuas thiab cov ntaub ntawv hloov pauv tsuas yog cov processor, thiab nruj me ntsis proportional rau lub load.

Yuav ua li cas peb tsim lub hauv paus ntawm Alfa-Bank kev nqis peev ua lag luam raws li Tarantool
Yuav ua li cas peb tsim lub hauv paus ntawm Alfa-Bank kev nqis peev ua lag luam raws li Tarantool
Hauv qhov no, lub cim xeeb tsuas yog siv los ua cov khoom sib txuas thiab cov khoom ib ntus xwb.

Yuav ua li cas peb tsim lub hauv paus ntawm Alfa-Bank kev nqis peev ua lag luam raws li Tarantool
Ntawm qhov tsis sib xws, ntawm cov servers cia, processor load tau nce, tab sis qeeb qeeb dua li ntawm cov servers uas txheej txheem kev sib txuas.

Yuav ua li cas peb tsim lub hauv paus ntawm Alfa-Bank kev nqis peev ua lag luam raws li Tarantool
Thiab nco noj loj hlob nyob rau hauv ncaj qha feem rau tus nqi ntawm cov ntaub ntawv loaded.

Yuav ua li cas peb tsim lub hauv paus ntawm Alfa-Bank kev nqis peev ua lag luam raws li Tarantool

Kev pabcuam

Txhawm rau txhim kho peb cov khoom tshiab tshwj xeeb raws li daim ntawv thov platform, peb tau tsim ib feem rau kev xa cov kev pabcuam thiab cov tsev qiv ntawv rau nws.

Cov kev pabcuam tsis yog cov lej me me uas ua haujlwm ntawm qee qhov chaw. Lawv tuaj yeem yog cov qauv loj heev thiab nyuaj uas yog ib feem ntawm pawg, tshawb xyuas cov ntaub ntawv siv, khiav lag luam logic thiab cov lus teb rov qab. Peb kuj xa tawm cov kev pabcuam schema rau GraphQL, thiab cov neeg siv khoom tau txais kev nkag mus rau thoob ntiaj teb rau cov ntaub ntawv, nrog rau kev soj ntsuam thoob plaws tag nrho cov qauv. Nws yooj yim heev.

Txij li cov kev pabcuam muaj ntau yam haujlwm ntxiv, peb txiav txim siab tias yuav tsum muaj cov tsev qiv ntawv uas peb yuav txav mus rau cov lej uas nquag siv. Peb tau ntxiv lawv rau qhov chaw nyab xeeb, tau kuaj yav dhau los tias nws tsis ua txhaum dab tsi rau peb. Thiab tam sim no peb tuaj yeem muab qhov chaw ntxiv rau kev ua haujlwm hauv daim ntawv ntawm cov tsev qiv ntawv.

Peb xav kom muaj lub platform tsis yog rau kev khaws cia, tab sis kuj suav nrog. Thiab txij li thaum peb twb muaj ib pawg ntawm replicas thiab shards, peb siv ib hom kev faib xam thiab hu ua nws daim ntawv qhia txo, vim hais tias nws muab tawm zoo ib yam li thawj daim ntawv qhia txo.

Cov txheej txheem qub

Tsis yog tag nrho peb cov txheej txheem qub txeeg qub teg tuaj yeem hu rau peb hla HTTP thiab siv GraphQL, txawm hais tias lawv txhawb nqa raws tu qauv. Yog li ntawd, peb tau tsim ib lub tshuab uas tso cai rau cov ntaub ntawv rov qab rau hauv cov tshuab no.

Yuav ua li cas peb tsim lub hauv paus ntawm Alfa-Bank kev nqis peev ua lag luam raws li Tarantool
Yog tias muaj qee yam hloov pauv rau peb, cov cim tshwj xeeb tau tshwm sim hauv Lub Luag Haujlwm Cia thiab cov lus nrog cov kev hloov pauv yuav xaus rau hauv cov kab ua haujlwm. Nws raug xa mus rau ib qho chaw sab nraud uas siv lub luag hauj lwm replicator cais. Lub luag haujlwm no tsis khaws lub xeev.

Kev txhim kho tshiab

Raws li koj nco qab, los ntawm qhov kev xav ntawm kev lag luam, peb tau ua asynchronous kaw. Tab sis tom qab ntawd lawv pom tau hais tias nws yuav tsis txaus, vim tias muaj cov chav kawm ntawm cov tshuab uas yuav tsum tau txais cov lus teb tam sim ntawd txog cov xwm txheej ntawm kev ua haujlwm. Yog li peb txuas ntxiv peb GraphQL thiab ntxiv kev hloov pauv. Lawv organically haum rau hauv cov qauv uas twb muaj lawm ntawm kev ua haujlwm nrog cov ntaub ntawv. Rau peb, qhov no yog ib qho ntawm ob qho tib si nyeem ntawv thiab sau ntawv rau lwm chav kawm.

Yuav ua li cas peb tsim lub hauv paus ntawm Alfa-Bank kev nqis peev ua lag luam raws li Tarantool
Peb kuj pom tau hais tias kev pabcuam ib leeg yuav tsis txaus rau peb, vim tias muaj cov ntaub ntawv hnyav heev uas yuav tsum tau tsim ib zaug ib hnub, ib lim tiam, ib hlis. Qhov no tuaj yeem siv sijhawm ntev, thiab cov ntawv ceeb toom tuaj yeem thaiv Tarantool qhov kev tshwm sim voj. Yog li ntawd, peb tsim nyias lub luag hauj lwm: teem caij thiab khiav. Cov neeg khiav dej num tsis khaws lub xeev. Lawv ua haujlwm hnyav uas peb tsis tuaj yeem suav ntawm ya. Thiab lub luag haujlwm teem sijhawm saib xyuas lub sijhawm pib ntawm cov haujlwm no, uas tau piav qhia hauv kev teeb tsa. Cov dej num lawv tus kheej tau muab khaws cia rau hauv tib qhov chaw raws li cov ntaub ntawv lag luam. Thaum lub sijhawm tsim nyog los, tus neeg teem sijhawm ua haujlwm, muab rau qee tus neeg khiav haujlwm, uas suav nws thiab txuag qhov tshwm sim.

Yuav ua li cas peb tsim lub hauv paus ntawm Alfa-Bank kev nqis peev ua lag luam raws li Tarantool
Tsis yog txhua txoj haujlwm yuav tsum tau ua raws sijhawm. Qee cov ntawv tshaj tawm yuav tsum tau nyeem raws li qhov xav tau. Thaum qhov kev xav tau no tuaj txog, ib txoj haujlwm raug tsim hauv sandbox thiab xa mus rau tus neeg khiav dej num rau kev ua tiav. Tom qab qee lub sijhawm, tus neeg siv tau txais cov lus teb asynchronous uas txhua yam tau suav nrog thiab daim ntawv qhia tau npaj txhij.

Yuav ua li cas peb tsim lub hauv paus ntawm Alfa-Bank kev nqis peev ua lag luam raws li Tarantool
Thaum xub thawj, peb tau ua raws li lub ntsiab lus ntawm kev khaws tag nrho cov ntaub ntawv, hloov kho nws thiab tsis rho tawm. Tab sis nyob rau hauv lub neej, los ntawm lub sij hawm mus rau lub sij hawm koj tseem yuav tau tshem tawm ib yam dab tsi, feem ntau yog ib co nyoos los yog nruab nrab cov ntaub ntawv. Raws li kev tas sij hawm, peb tau tsim ib lub tswv yim los ntxuav cov ntaub ntawv tsis tu ncua.

Yuav ua li cas peb tsim lub hauv paus ntawm Alfa-Bank kev nqis peev ua lag luam raws li Tarantool
Peb kuj nkag siab tias sai lossis tom qab qhov xwm txheej yuav tshwm sim thaum yuav tsis muaj chaw txaus los khaws cov ntaub ntawv hauv lub cim xeeb, tab sis txawm li cas los xij cov ntaub ntawv yuav tsum tau khaws cia. Rau cov hom phiaj no, peb yuav sai sai ua disk cia.

Yuav ua li cas peb tsim lub hauv paus ntawm Alfa-Bank kev nqis peev ua lag luam raws li Tarantool

xaus

Peb pib nrog txoj haujlwm ntawm kev thauj cov ntaub ntawv mus rau hauv ib qho qauv thiab siv peb lub hlis tsim nws. Peb muaj rau cov ntaub ntawv muab khoom siv. Tag nrho cov kev hloov pauv rau hauv ib qho qauv yog kwv yees li 30 txhiab kab hauv Lua. Thiab feem ntau ntawm txoj haujlwm tseem ua ntej. Qee lub sij hawm tsis muaj kev txhawb siab los ntawm cov neeg nyob sib ze, thiab muaj ntau qhov xwm txheej uas cuam tshuam rau kev ua haujlwm. Yog tias koj tau ntsib ib txoj haujlwm zoo sib xws, ces muab lub sijhawm uas zoo li qub rau koj rau nws qhov kev siv los ntawm peb, lossis plaub.

Kuj tseem nco ntsoov tias cov teeb meem uas twb muaj lawm hauv cov txheej txheem kev lag luam tsis tuaj yeem daws tau siv DBMS tshiab, txawm tias muaj txiaj ntsig zoo heev. Kuv txhais li cas? Thaum pib ntawm peb qhov project, peb tsim cov kev xav ntawm cov neeg siv khoom tam sim no peb yuav nqa cov ntaub ntawv ceev ceev tshiab thiab peb yuav nyob! Cov txheej txheem yuav mus sai dua, txhua yam yuav zoo. Qhov tseeb, thev naus laus zis tsis daws teeb meem uas cov txheej txheem kev lag luam muaj, vim tias cov txheej txheem kev lag luam yog tib neeg. Thiab koj yuav tsum ua haujlwm nrog tib neeg, tsis yog siv tshuab.

Kev sim-tsav kev txhim kho tuaj yeem ua rau mob thiab siv sijhawm nyob rau theem pib. Tab sis qhov txiaj ntsig zoo ntawm nws yuav pom tau txawm tias nyob rau lub sijhawm luv luv, thaum koj tsis tas yuav ua dab tsi los ua qhov ntsuas kev rov qab.

Nws yog ib qho tseem ceeb heev uas yuav tau ua qhov kev ntsuam xyuas load ntawm txhua theem ntawm txoj kev loj hlob. Qhov sai dua koj pom qee qhov tsis zoo hauv kev tsim vaj tsev, nws yuav yooj yim dua los kho nws, uas yuav txuag koj ntau lub sijhawm yav tom ntej.

Tsis muaj dab tsi phem rau Lua. Txhua tus tuaj yeem kawm sau rau hauv nws: Java tus tsim tawm, tus tsim JavaScript, tus tsim tawm Python, pem hauv ntej lossis rov qab kawg. Txawm peb cov kws tshuaj ntsuam sau rau nws.

Thaum peb tham txog qhov tseeb tias peb tsis muaj SQL, nws txaus ntshai rau tib neeg. "Yuav ua li cas koj tau txais cov ntaub ntawv tsis muaj SQL? Puas yog qhov ua tau? Muaj tseeb tiag. Hauv chav kawm OLTP, SQL tsis xav tau. Nws muaj lwm txoj hauv kev ntawm qee hom lus uas tam sim ntawd rov qab los rau koj mus rau cov ntaub ntawv-oriented saib. Piv txwv li, GraphQL. Thiab muaj lwm txoj hauv kev ntawm kev faib xam.

Yog tias koj nkag siab tias koj yuav xav tau qhov ntsuas, ces tsim koj cov kev daws teeb meem ntawm Tarantool hauv txoj hauv kev uas nws tuaj yeem khiav ua ke ntawm ntau qhov xwm txheej Tarantool. Yog tias koj tsis ua qhov no, nws yuav nyuaj thiab mob siab tom qab, txij li Tarantool tsuas tuaj yeem siv ib qho tseem ceeb ntawm processor.

Tau qhov twg los: www.hab.com

Ntxiv ib saib