Wani tsarin kulawa

Wani tsarin kulawa
16 modems, 4 masu aiki na salula = saurin fita 933.45 Mbit/s

Gabatarwar

Sannu! Wannan labarin game da yadda muka rubuta sabon tsarin sa ido don kanmu. Ya bambanta da waɗanda suke cikin ikonsa na samun ma'auni mai ƙarfi na aiki tare da ƙarancin amfani da albarkatu. Adadin jefa ƙuri'a na iya kaiwa mil 0.1 seconds tare da daidaiton aiki tare tsakanin awo na 10 nanose seconds. Duk fayilolin binary sun mamaye megabyte 6.

Game da aikin

Muna da takamaiman samfuri. Muna samar da cikakkiyar bayani don taƙaita abubuwan da ake buƙata da kuma rashin haƙuri na tashoshin watsa bayanai. Wannan shine lokacin da akwai tashoshi da yawa, bari mu ce Operator1 (40Mbit / s) + Operator2 (30Mbit / s)+ Wani abu kuma (5Mbit / s), sakamakon shine tashar tsayayye da sauri, saurin wanda zai zama wani abu kamar haka. wannan: (40+ 30+5)x0.92=75×0.92=69Mbit/s.

Irin waɗannan mafita suna buƙatar inda ƙarfin kowane tashoshi ɗaya bai isa ba. Misali, sufuri, tsarin sa ido na bidiyo da watsa shirye-shiryen bidiyo na ainihi, watsa shirye-shiryen talabijin kai tsaye da watsa shirye-shiryen rediyo, duk wani yanki na kewayen birni inda a cikin ma'aikatan telecom akwai wakilai na Big Four kawai kuma saurin kan modem / tashoshi ɗaya bai isa ba. .
Ga kowane ɗayan waɗannan wuraren, muna samar da nau'ikan na'urori daban-daban, amma ɓangaren software ɗin su kusan iri ɗaya ne kuma tsarin kulawa mai inganci yana ɗaya daga cikin manyan samfuransa, ba tare da aiwatar da daidaitaccen samfurin ba.

A cikin tsawon shekaru da yawa, mun sami nasarar ƙirƙirar matakai masu yawa, sauri, tsarin giciye da tsarin kulawa mara nauyi. Wannan shine abin da muke so mu raba tare da al'ummarmu masu daraja.

Tsara matsalar

Tsarin sa ido yana ba da ma'auni na ajujuwa daban-daban na asali: ma'auni na ainihin lokacin da duk sauran su. Tsarin sa ido yana da buƙatu masu zuwa kawai:

  1. Babban mitar aiki tare na ma'auni na ainihi da canja wurin su zuwa tsarin gudanarwar sadarwa ba tare da bata lokaci ba.
    Babban mita da aiki tare na ma'auni daban-daban ba kawai mahimmanci ba ne, yana da mahimmanci don nazarin entropy na tashoshin watsa bayanai. Idan a cikin tashar watsa bayanai guda ɗaya matsakaicin jinkiri shine millise seconds 30, to, kuskuren aiki tare tsakanin sauran awoyi na millise seconds zai haifar da lalata saurin saurin tashar da kusan 5%. Idan muka ɓata lokacin da millisecond 1 a cikin tashoshi 4, raguwar saurin zai iya raguwa cikin sauƙi zuwa 30%. Bugu da ƙari, entropy a cikin tashoshi yana canzawa da sauri, don haka idan muka auna shi kasa da sau ɗaya a kowace milliseconds 0.5, a kan tashoshi masu sauri tare da ɗan jinkirta za mu sami raguwa mai sauri. Tabbas, ba a buƙatar irin wannan daidaito ga duk ma'auni kuma ba a cikin kowane yanayi ba. Lokacin da jinkiri a cikin tashar ya kasance 500 millise seconds, kuma muna aiki tare da irin wannan, to, kuskuren 1 millisecond zai kusan zama ba a sani ba. Hakanan, don ma'aunin tsarin tallafi na rayuwa, muna da isassun ƙididdiga da ƙimar aiki tare na daƙiƙa 2, amma tsarin sa ido da kansa dole ne ya sami damar yin aiki tare da ƙimar zaɓe mai girma da daidaita daidaitaccen ma'auni.
  2. Ƙananan amfani da albarkatu da tari guda ɗaya.
    Ƙarshen na'urar na iya zama ko dai wani katafaren ginin jirgi mai ƙarfi wanda zai iya yin nazarin halin da ake ciki a kan hanya ko gudanar da rikodin mutane, ko kuma kwamfutar tafi-da-gidanka mai girman allo guda ɗaya wanda soja na musamman ke sawa a ƙarƙashin sulke na jikinsa don watsa bidiyo a ciki. ainihin lokacin a cikin yanayin sadarwa mara kyau. Duk da irin waɗannan gine-gine iri-iri da ƙarfin kwamfuta, muna son samun tarin software iri ɗaya.
  3. Gine-ginen laima
    Dole ne a tattara ma'auni kuma a haɗa su akan na'urar ƙarshe, suna da ma'ajiyar gida, kuma za a iya gani a ainihin lokaci da baya. Idan akwai haɗi, canja wurin bayanai zuwa tsarin sa ido na tsakiya. Lokacin da babu haɗi, layin aikawa ya kamata ya tara kuma kada ya cinye RAM.
  4. API don haɗawa cikin tsarin sa ido na abokin ciniki, saboda babu wanda ke buƙatar tsarin kulawa da yawa. Dole ne abokin ciniki ya tattara bayanai daga kowace na'ura da cibiyoyin sadarwa zuwa cikin sa ido guda.

Me ya faru

Don kar a ɗora wa dogon karatu mai ban sha'awa, ba zan ba da misalai da ma'auni na duk tsarin sa ido ba. Wannan zai haifar da wani labarin. Zan ce kawai mun kasa samun tsarin sa ido wanda ke da ikon ɗaukar ma'auni biyu a lokaci guda tare da kuskuren ƙasa da millise seconds 1 kuma yana aiki daidai da kyau duka akan gine-ginen ARM tare da 64 MB na RAM kuma akan gine-ginen x86_64 tare da 32 GB na RAM. Saboda haka, mun yanke shawarar rubuta namu, wanda zai iya yin duk wannan. Ga abin da muka samu:

Takaitacciyar hanyar samar da tashoshi uku don hanyoyin sadarwa daban-daban


Ganin wasu ma'auni masu mahimmanci

Wani tsarin kulawa
Wani tsarin kulawa
Wani tsarin kulawa
Wani tsarin kulawa

gine

Muna amfani da Golang a matsayin babban harshe na shirye-shirye, duka akan na'urar da kuma a cibiyar bayanai. Ya sauƙaƙa rayuwa sosai tare da aiwatar da ayyuka da yawa da kuma ikon samun fayil ɗin binary guda ɗaya mai alaƙa da ƙima ga kowane sabis. Sakamakon haka, muna yin tanadi mai mahimmanci a cikin albarkatu, hanyoyi da zirga-zirga don tura sabis ɗin don kawo ƙarshen na'urori, lokacin haɓakawa da lalata lambar.

Ana aiwatar da tsarin bisa ga ka'idar na yau da kullun kuma ya ƙunshi tsarin ƙasa da yawa:

  1. Rijistar awo.
    Kowane ma'auni yana aiki da zaren sa kuma yana aiki tare a cikin tashoshi. Mun sami damar cimma daidaiton aiki tare har zuwa nanose seconds 10.
  2. Ma'ajiyar awo
    Muna zabar tsakanin rubuta namu ajiya don jerin lokaci ko amfani da wani abu da ya riga ya kasance. Ana buƙatar ma'ajin bayanai don bayanan da aka dawo da su wanda za a iya gani a baya, wato, ba ya ƙunshi bayanai game da jinkiri a cikin tashar kowane 0.5 milli seconds ko kuskuren karantawa a cikin hanyar sadarwar sufuri, amma akwai gudu akan kowane nau'i na kowane miliyon 500. Baya ga manyan buƙatun don dandamali na giciye da ƙarancin amfani da albarkatu, yana da matuƙar mahimmanci a gare mu mu iya aiwatarwa. bayanai ne inda aka adana shi. Wannan yana adana manyan albarkatun kwamfuta. Muna amfani da Tarantool DBMS a cikin wannan aikin tun daga 2016 kuma ya zuwa yanzu ba mu ga wanda zai maye gurbinsa a sararin sama ba. Mai sassauƙa, tare da mafi kyawun amfani da albarkatu, fiye da isassun tallafin fasaha. Tarantool kuma yana aiwatar da tsarin GIS. Tabbas, ba shi da ƙarfi kamar PostGIS, amma ya isa ga ayyukanmu na adana wasu ma'auni masu alaƙa da wuri (masu dacewa don sufuri).
  3. Kallon awo
    Komai yana da sauki a nan. Muna ɗaukar bayanai daga ɗakin ajiyar kuma mu nuna shi ko dai a ainihin lokacin ko kuma a baya.
  4. Aiki tare da bayanai tare da tsarin kulawa na tsakiya.
    Tsarin kulawa na tsakiya yana karɓar bayanai daga duk na'urori, yana adana shi tare da ƙayyadadden tarihin kuma aika shi zuwa tsarin sa ido na Abokin ciniki ta hanyar API. Ba kamar tsarin sa ido na gargajiya ba, wanda “kai” ke yawo da tattara bayanai, muna da kishiyar makirci. Na'urorin da kansu suna aika bayanai lokacin da akwai haɗi. Wannan batu ne mai mahimmanci, tun da yake yana ba ku damar karɓar bayanai daga na'urar na tsawon lokacin da ba a samuwa ba kuma ba a loda tashoshi da albarkatun yayin da na'urar ba ta samuwa. Muna amfani da uwar garken saka idanu na Influx azaman tsarin sa ido na tsakiya. Ba kamar kwatankwacinsa ba, yana iya shigo da bayanan baya (wato, tare da tambarin lokaci daban da lokacin da aka karɓi ma'auni). Grafana na iya hango ma'aunin da aka tattara, wanda aka gyara da fayil. An kuma zaɓi wannan madaidaicin tari saboda yana da shirye-shiryen haɗin gwiwar API tare da kusan kowane tsarin sa ido na abokin ciniki.
  5. Aiki tare bayanai tare da tsarin sarrafa na'urar tsakiya.
    Tsarin sarrafa na'urar yana aiwatar da Samar da Zero Touch (sabuntawa firmware, daidaitawa, da sauransu) kuma, ba kamar tsarin kulawa ba, yana karɓar matsaloli kawai kowace na'ura. Waɗannan su ne abubuwan da ke haifar da aiki na ayyukan sa ido na kayan aikin kan jirgin da duk ma'auni na tsarin tallafi na rayuwa: CPU da zafin jiki na SSD, nauyin CPU, sarari kyauta da lafiyar SMART akan faifai. Hakanan an gina ma'ajiyar tsarin ƙasa akan Tarantool. Wannan yana ba mu gagarumin gudu cikin tara jerin lokaci a cikin dubban na'urori, kuma yana warware matsalar daidaita bayanai tare da waɗannan na'urori gaba ɗaya. Tarantool yana da kyakkyawan jerin gwano da tsarin bayarwa. Mun sami wannan muhimmin fasalin daga cikin akwatin, mai girma!

Tsarin sarrafa hanyar sadarwa

Wani tsarin kulawa

Menene gaba

Ya zuwa yanzu, mafi raunin hanyar haɗin yanar gizon mu shine tsarin kulawa na tsakiya. Ana aiwatar da shi 99.9% akan daidaitaccen tari kuma yana da ƙarancin rashin amfani:

  1. InfluxDB yana rasa bayanai lokacin da aka rasa wuta. A matsayinka na mai mulki, Abokin ciniki yana tattara duk abin da ya zo daga na'urorin da sauri kuma bayanan kanta ba ya ƙunshi bayanai fiye da minti 5, amma a nan gaba wannan na iya zama ciwo.
  2. Grafana yana da matsaloli da yawa tare da tara bayanai da aiki tare da nuninsa. Matsalolin da aka fi sani shine lokacin da ma'ajin bayanai ya ƙunshi jerin lokaci tare da tazara na daƙiƙa 2 farawa daga, say, 00:00:00, kuma Grafana ya fara nuna bayanai a jimlar daga +1 seconds. Sakamakon haka, mai amfani yana ganin jadawali na rawa.
  3. Yawan adadin lambar don haɗin API tare da tsarin sa ido na ɓangare na uku. Ana iya ƙara ƙarami sosai kuma ba shakka a sake rubuta shi cikin Go)

Ina tsammanin duk kun ga daidai yadda Grafana yake kama kuma kun san matsalolinsa ba tare da ni ba, don haka ba zan cika ɗaukar hoto da hotuna ba.

ƙarshe

Da gangan ban bayyana cikakkun bayanan fasaha ba, amma an kwatanta kawai ainihin ƙirar wannan tsarin. Da fari dai, don cikakken bayanin tsarin a zahiri, za a buƙaci wani labarin. Na biyu, ba kowa ba ne zai yi sha'awar wannan. Rubuta a cikin maganganun abin da bayanan fasaha kuke so ku sani.

Idan akwai wanda ke da tambayoyi da suka wuce iyakar wannan labarin, kuna iya rubuto mani ta a.rodin @ qedr.com

source: www.habr.com

Add a comment