Gine-gine don adanawa da raba hotuna a cikin Badoo

Gine-gine don adanawa da raba hotuna a cikin Badoo

Artem Denisov 0rsh201, Badoo)

Badoo shine gidan yanar gizo mafi girma a duniya. A halin yanzu muna da kusan masu amfani da rajista miliyan 330 a duk duniya. Amma abin da ya fi mahimmanci a cikin mahallin tattaunawarmu a yau shine cewa muna adana kusan petabytes 3 na hotuna masu amfani. Kowace rana masu amfani da mu suna loda sabbin hotuna kusan miliyan 3,5, kuma nauyin karatun yana kusa buƙatun dubu 80 a sakan daya. Wannan abu ne mai yawa ga bayanmu, kuma wani lokacin akwai matsaloli tare da wannan.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Zan yi magana game da ƙirar wannan tsarin, wanda ke adanawa da aika hotuna gabaɗaya, kuma zan duba shi daga ra'ayin mai haɓakawa. Za a yi takaitaccen bayani kan yadda aka bunkasa, inda zan zayyana muhimman abubuwan da suka faru, sai dai kawai zan yi magana dalla-dalla kan hanyoyin da muke amfani da su a halin yanzu.

Yanzu bari mu fara.


Kamar yadda na ce, wannan zai zama koma baya, kuma don fara shi a wani wuri, bari mu dauki misali mafi yawanci.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Muna da aiki gama gari, muna buƙatar karɓa, adanawa da aika hotunan mai amfani. A cikin wannan tsari, aikin gabaɗaya ne, zamu iya amfani da kowane abu:

  • ajiyar girgije na zamani,
  • maganin akwati, wanda kuma akwai da yawa a yanzu;
  • Za mu iya kafa na'urori da yawa a cikin cibiyar bayanan mu kuma mu sanya manyan rumbun kwamfyuta a kansu da adana hotuna a wurin.

Badoo a tarihi - duka a yanzu da kuma (a lokacin da yake cikin ƙuruciyarsa) - yana rayuwa akan sabar sa, a cikin namu DCs. Saboda haka, wannan zaɓi ya kasance mafi kyau a gare mu.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Mun ɗauki injuna da yawa kawai, muna kiran su "hotuna", kuma mun sami gungu mai adana hotuna. Amma da alama wani abu ya ɓace. Domin duk wannan ya yi aiki, muna buƙatar ko ta yaya sanin wane inji za mu adana hotuna. Kuma a nan ma, babu buƙatar buɗe Amurka.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Muna ƙara wani filin zuwa ma'ajiyar mu tare da bayani game da masu amfani. Wannan zai zama maɓallin sharding. A cikin yanayinmu, mun kira shi place_id, kuma wannan wurin id yana nuna wurin da ake adana hotunan masu amfani. Muna yin taswira.

A mataki na farko, ana iya yin wannan har ma da hannu - mun ce hoton wannan mai amfani da irin wannan wuri zai sauka a kan irin wannan uwar garke. Godiya ga wannan taswira, koyaushe mun san lokacin da mai amfani ya loda hoto, inda zai adana shi, kuma mun san inda za mu ba da shi.

Wannan tsari ne maras muhimmanci, amma yana da fa'ida sosai. Na farko shi ne mai sauki kamar yadda na fada, na biyu kuma shi ne, ta wannan hanya za mu iya yin awo a kwance a saukake ta hanyar kawo sabbin motoci kawai da kara su cikin taswira. Ba kwa buƙatar yin wani abu kuma.

Haka abin ya kasance gare mu na ɗan lokaci.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Wannan ya kasance a kusa da 2009. Motoci suka kawo, aka kawo...

Kuma a wani lokaci mun fara lura cewa wannan makirci yana da wasu rashin amfani. Menene rashin amfani?

Da farko dai, akwai iyakacin iya aiki. Ba za mu iya matsar rumbun kwamfyuta da yawa zuwa uwar garken jiki ɗaya kamar yadda muke so ba. Kuma wannan ya zama matsala a tsawon lokaci kuma tare da haɓakar bayanan.

Na biyu. Wannan tsari ne na injina, tunda irin waɗannan injinan suna da wahalar sake amfani da su a cikin wasu gungu; suna da takamaiman takamaiman, watau. ya kamata su kasance masu rauni a cikin aiki, amma a lokaci guda tare da babban rumbun kwamfutarka.

Wannan duk don 2009 ne, amma, bisa manufa, waɗannan buƙatun har yanzu suna da dacewa a yau. Muna da ra'ayi na baya, don haka a cikin 2009 komai ya kasance mara kyau tare da wannan.

Kuma batu na ƙarshe shine farashin.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Farashin ya yi tsada sosai a lokacin, kuma muna buƙatar neman wasu hanyoyi. Wadancan. muna buƙatar ko ta yaya mafi kyawun amfani da sararin samaniya a cibiyoyin bayanai da sabar na zahiri wanda duk wannan yake. Kuma injiniyoyin tsarin mu sun fara wani babban nazari inda suka yi bitar gungun zaɓuɓɓuka daban-daban. Sun kuma kalli tsarin fayiloli masu tarin yawa kamar su PolyCeph da Luster. Akwai matsalolin aiki da aiki mai wahala. Suka ki. Mun yi ƙoƙarin hawan duk bayanan ta hanyar NFS akan kowace mota don ko ta yaya haɓaka ta. Karatu kuma ya yi kasala, mun gwada mafita daban-daban daga dillalai daban-daban.

Kuma a ƙarshe, mun yanke shawarar yin amfani da abin da ake kira Storage Area Network.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Waɗannan manyan SHDs ne waɗanda aka kera musamman don adana bayanai masu yawa. Shelves ne tare da faifai waɗanda aka ɗora a kan injunan fitarwa na ƙarshe. Wannan. muna da wasu nau'ikan injuna, ƙananan ƙananan, da waɗannan SHDs, waɗanda suke bayyana a fili ga tunaninmu na aikawa, watau. don nginx ɗin mu ko wani don ba da buƙatun waɗannan hotuna.

Wannan shawarar tana da fa'idodi na fili. Wannan shine SHD. Yana da nufin adana hotuna. Wannan yana aiki mafi arha fiye da ba da injuna kawai tare da tukwici.

Na biyu ƙari.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Wannan shi ne cewa ƙarfin ya zama mafi girma, watau. za mu iya ɗaukar ƙarin ajiya a cikin ƙaramin ƙarami.

Amma akwai kuma rashin amfani da suka fito da sauri. Yayin da adadin masu amfani da kaya akan wannan tsarin ya karu, matsalolin aiki sun fara tasowa. Kuma matsalar a nan a bayyane take - duk wani SHD da aka tsara don adana hotuna da yawa a cikin ƙaramin ƙarami, a matsayin mai mulkin, yana fama da karatu mai zurfi. Wannan hakika gaskiya ne ga kowane ajiyar girgije ko wani abu dabam. Yanzu ba mu da ma'auni mai mahimmanci wanda zai zama marar iyaka, za ku iya sanya wani abu a ciki, kuma zai iya jure wa karatu sosai. Musamman karatu na yau da kullun.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Kamar yadda lamarin yake tare da hotunan mu, saboda ana buƙatar hotuna ba tare da daidaituwa ba, kuma wannan zai yi tasiri sosai akan aikin su.

Ko da bisa ga alkaluman yau, idan muka sami wani wuri fiye da 500 RPS don hotuna akan na'ura wanda aka haɗa da ajiya, matsaloli sun riga sun fara. Kuma abin ya ishe mu muni, saboda yawan masu amfani da shi yana karuwa, abubuwa za su yi muni ne kawai. Wannan yana buƙatar inganta ko ta yaya.

Don ingantawa, mun yanke shawarar a wancan lokacin, a fili, don kallon bayanin martaba - abin da, a gaba ɗaya, yana faruwa, abin da ya kamata a inganta.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Kuma a nan komai yana wasa a hannunmu.

Na riga na ce a cikin faifan farko: muna da buƙatun karantawa dubu 80 a sakan daya tare da loda miliyan 3,5 kawai a kowace rana. Wato, wannan shi ne bambancin tsari uku na girma. A bayyane yake cewa karatun yana buƙatar ingantawa kuma a zahiri ya bayyana yadda.

Akwai ƙarin ƙaramin batu guda ɗaya. Takamaiman sabis ɗin sune kamar yadda mutum yayi rajista, ya loda hoto, sannan ya fara kallon sauran mutane, kamar su, kuma ana nuna shi ga sauran mutane. Sai ya sami abokin aure ko bai sami abokiyar aure ba, ya danganta da yadda zai kasance, kuma ya daina amfani da sabis na ɗan lokaci. A wannan lokacin, lokacin da yake amfani da shi, hotunansa suna da zafi sosai - ana buƙatar su, mutane da yawa suna kallon su. Da zarar ya daina yin haka, da sauri ya fita daga yawan bayyanar da wasu mutane kamar yadda yake da shi a baya, kuma ba a taɓa neman hotunansa ba.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Wadancan. Muna da ƙaramin bayanai masu zafi sosai. Amma a lokaci guda akwai buƙatun da yawa a gare shi. Kuma cikakkiyar mafita a nan ita ce ƙara cache.

Cache tare da LRU zai magance duk matsalolinmu. Me muke yi?

Gine-gine don adanawa da raba hotuna a cikin Badoo

Muna ƙara wani ɗan ƙaramin ƙarami a gaban babban gungun mu tare da ajiya, wanda ake kira photocaches. Wannan ainihin wakili ne na caching.

Ta yaya yake aiki daga ciki? Ga mai amfani da mu, ga ma'ajiya. Komai iri daya ne kamar da. Me muka kara a tsakanin?

Gine-gine don adanawa da raba hotuna a cikin Badoo

Na'ura ce kawai mai faifan gida na zahiri, mai sauri. Wannan yana tare da SSD, misali. Kuma ana adana wani nau'in cache na gida akan wannan faifan.

Me yayi kama? Mai amfani yana aika buƙatun hoto. NGINX yana neman ta farko a cikin ma'ajin gida. Idan ba haka ba, to kawai proxy_pass zuwa ma'ajiyar mu, zazzage hoton daga nan kuma a ba mai amfani.

Amma wannan banal ne sosai kuma ba a san abin da ke faruwa a ciki ba. Yana aiki da wani abu kamar wannan.

Gine-gine don adanawa da raba hotuna a cikin Badoo

An raba cache a hankali zuwa matakai uku. Lokacin da na ce "launi uku", wannan baya nufin cewa akwai wani nau'i mai rikitarwa. A'a, waɗannan sharadi ne kawai kundayen adireshi uku a cikin tsarin fayil:

  1. Wannan maɓalli ne inda hotuna da aka sauke kawai daga wakili tafi.
  2. Wannan cache ne mai zafi wanda ke adana hotunan da ake nema a halin yanzu.
  3. Kuma cache mai sanyi, inda a hankali ana fitar da hotuna daga ma'ajiyar zafi lokacin da buƙatu kaɗan suka zo musu.

Domin wannan ya yi aiki, muna buƙatar ko ta yaya sarrafa wannan cache, muna buƙatar sake tsara hotunan da ke cikinsa, da sauransu. Wannan kuma tsari ne na farko.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Nginx kawai yana rubutawa ga RAMDisk access.log ga kowane buƙatun, wanda a ciki yake nuna hanyar zuwa hoton da aka yi amfani da shi a halin yanzu (hanyar dangi, ba shakka), da kuma wane bangare aka ba da shi. Wadancan. yana iya cewa "hoto 1" sannan ko dai ma'aji, ko ma'aji mai zafi, ko cache mai sanyi, ko wakili.

Dangane da wannan, muna buƙatar ko ta yaya za mu yanke shawarar abin da za mu yi da hoton.

Muna da ɗan ƙaramin daemon da ke aiki akan kowace na'ura wanda koyaushe yana karanta wannan log ɗin kuma yana adana ƙididdiga akan amfani da wasu hotuna a ƙwaƙwalwar ajiyarta.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Kawai yana tattarawa a wurin, yana ajiye lissafin kuma yana yin waɗannan lokaci-lokaci. Yana matsar da hotuna da ake buƙata, waɗanda akwai buƙatun da yawa, zuwa ma'ajin zafi, duk inda suke.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Hotunan da ba safai ake buƙata ba kuma ba a cika buƙata ba ana fitar da su a hankali daga ma'ajin zafi zuwa cikin sanyi.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Kuma lokacin da muka ƙare da sarari a cikin ma'ajin, kawai mu fara share komai daga ma'ajiyar sanyi ba tare da nuna bambanci ba. Kuma ta hanyar, wannan yana aiki da kyau.

Domin a adana hoton nan da nan lokacin tura shi zuwa ga buffer, muna amfani da umarnin proxy_store kuma buffer shima RAMDisk ne, watau. ga mai amfani yana aiki da sauri. Wannan ya shafi abubuwan ciki na uwar garken caching kanta.

Tambayar da ta rage ita ce yadda ake rarraba buƙatun a cikin waɗannan sabobin.

A ce akwai gungu na injinan ajiya guda ashirin da kuma na'urorin caching guda uku (haka ya faru).

Gine-gine don adanawa da raba hotuna a cikin Badoo

Muna buƙatar ko ta yaya mu tantance waɗanne buƙatun na waɗanne hotuna ne da kuma inda za mu saukar da su.

Zaɓin mafi yawan wuri shine Round Robin. Ko ayi ta bazata?

Wannan a fili yana da lahani da yawa saboda za mu yi amfani da cache sosai a irin wannan yanayin. Buƙatun za su sauka akan wasu injunan bazuwar: anan an adana shi, amma a na gaba babu shi. Kuma idan duk wannan ya yi aiki, zai yi muni sosai. Ko da ƙananan injuna a cikin gungu.

Muna buƙatar ko ta yaya ba tare da shakka ba mu tantance wace uwar garken da za mu saukar da buƙatar.

Akwai hanyar banal. Muna ɗaukar hash daga URL ko hash daga maɓallin sharding ɗin mu, wanda ke cikin URL, kuma mu raba shi da adadin sabobin. Zai yi aiki? So.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Wadancan. Muna da buƙatun 2%, misali, ga wasu "example_url" koyaushe zai sauka akan sabar tare da index "XNUMX", kuma za a yi watsi da cache koyaushe gwargwadon yadda zai yiwu.

Amma akwai matsala tare da sake rabawa a cikin irin wannan makirci. Resharding - Ina nufin canza adadin sabobin.

Bari mu ɗauka cewa gungu na caching ɗinmu ba zai iya jurewa ba kuma mun yanke shawarar ƙara wata na'ura.

Mu kara.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Yanzu komai yana rarraba ba uku ba, amma ta hudu. Don haka, kusan dukkan maɓallan da muke da su, kusan duk URL ɗin yanzu suna rayuwa akan wasu sabobin. An lalata duk cache ɗin na ɗan lokaci kaɗan. Duk buƙatun sun faɗi kan gunkin ajiyar mu, ya zama mara lafiya, gazawar sabis da masu amfani da ba su gamsu ba. Ba na son yin hakan.

Wannan zabin kuma bai dace da mu ba.

Wannan. me ya kamata mu yi? Dole ne mu ko ta yaya mu yi ingantaccen amfani da cache, mu yi ƙasa da buƙatu iri ɗaya akan sabar iri ɗaya akai-akai, amma mu yi tsayayya da sake rabawa. Kuma akwai irin wannan mafita, ba haka ba ne mai rikitarwa. Ana kiran shi daidai gwargwado.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Yaya abin yake?

Gine-gine don adanawa da raba hotuna a cikin Badoo

Muna ɗaukar wasu ayyuka daga maɓallin sharding kuma muna yada duk ƙimar sa akan da'irar. Wadancan. a aya 0, mafi ƙanƙanta da matsakaicin ƙima suna haɗuwa. Bayan haka, muna sanya duk sabobin mu akan da'ira ɗaya kamar haka:

Gine-gine don adanawa da raba hotuna a cikin Badoo

Kowane uwar garken an siffanta shi da maki ɗaya, kuma sashin da ke tafiya kusa da agogon sa, don haka, wannan mai masaukin yana aiki. Lokacin da buƙatun ya zo mana, nan da nan za mu ga cewa, alal misali, buƙatar A - yana da hash a can - kuma ana ba da shi ta hanyar uwar garken 2. Request B - ta uwar garken 3. Da sauransu.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Me ke faruwa a cikin wannan yanayin yayin sake rabawa?

Gine-gine don adanawa da raba hotuna a cikin Badoo

Ba ma lalata cache gabaɗaya, kamar dā, kuma ba ma matsar da dukkan maɓallan, amma muna matsar da kowane sashe kaɗan tazara ta yadda, in mun gwada da magana, uwar garken mu na shida, wanda muke son ƙarawa, ya dace da sarari kyauta, kuma mu kara shi a can.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Tabbas, a irin wannan yanayi ma makullin ma suna fita. Amma sun fita da rauni fiye da baya. Kuma mun ga cewa maɓallan mu biyu na farko sun kasance a kan sabobin su, kuma uwar garken caching ya canza kawai don maɓallin ƙarshe. Wannan yana aiki sosai yadda ya kamata, kuma idan kun ƙara sabbin runduna inrementally, to babu babbar matsala a nan. Kuna ƙara da ƙara kaɗan a lokaci guda, jira har sai cache ya sake cika, kuma komai yana aiki da kyau.

Tambaya ɗaya ta rage tare da ƙi. Bari mu ɗauka cewa wata irin mota ba ta da aiki.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Kuma ba za mu so da gaske mu sabunta wannan taswira ba a wannan lokacin, lalata ɓangaren cache, da sauransu, idan, alal misali, an sake kunna injin ɗin, kuma muna buƙatar buƙatun sabis ko ta yaya. Muna kawai adana cache na hoto guda ɗaya a kowane rukunin yanar gizon, wanda ke aiki azaman madadin kowace na'ura da ke ƙasa a halin yanzu. Kuma idan ba zato ba tsammani ɗaya daga cikin sabobinmu ya zama babu, zirga-zirgar yana zuwa wurin. A zahiri, ba mu da wani cache a can, watau. yana da sanyi, amma aƙalla ana aiwatar da buƙatun masu amfani. Idan wannan ɗan gajeren lokaci ne, to, muna fuskantar shi gaba ɗaya cikin nutsuwa. Akwai ƙarin kaya akan ajiya. Idan wannan tazara ya yi tsayi, to, za mu iya yanke shawara - don cire wannan uwar garke daga taswirar ko a'a, ko watakila maye gurbin shi da wani.

Wannan game da tsarin caching ne. Mu duba sakamakon.

Zai zama kamar babu wani abu mai rikitarwa a nan. Amma wannan hanyar sarrafa cache ta ba mu ƙimar dabara ta kusan 98%. Wadancan. Daga cikin waɗannan buƙatun dubu 80 a sakan daya, 1600 ne kawai ke isa wurin ajiya, kuma wannan nauyi ne na yau da kullun, suna jurewa cikin nutsuwa, koyaushe muna da ajiyar kuɗi.

Mun sanya waɗannan sabobin a cikin uku na DCs, kuma mun sami maki uku na kasancewa - Prague, Miami da Hong Kong.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Wannan. suna da yawa ko žasa a cikin gida zuwa kowane kasuwannin da muke so.

Kuma a matsayin kyakkyawan kari, mun sami wannan wakili na caching, wanda a zahiri CPU ba shi da aiki, saboda ba a buƙata don hidimar abun ciki. Kuma a can, ta amfani da NGINX + Lua, mun aiwatar da dabaru masu amfani da yawa.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Misali, zamu iya gwaji tare da webp ko jpeg mai ci gaba (waɗannan sifofin zamani ne masu inganci), duba yadda yake shafar zirga-zirga, yanke wasu yanke shawara, ba da damar wasu ƙasashe, da sauransu; yi girma mai ƙarfi ko yanke hotuna akan tashi.

Wannan yana da kyau idan, alal misali, kana da aikace-aikacen wayar hannu wanda ke nuna hotuna, kuma aikace-aikacen wayar ba ya son bata CPU na abokin ciniki akan neman babban hoto sannan a canza shi zuwa wani girman girman don tura shi zuwa ciki. kallo. Za mu iya kawai ƙididdige wasu sigogi a cikin URL na sharadi na UPort, kuma cache ɗin hoto zai sake girman hoton da kansa. A matsayinka na mai mulki, zai zaɓi girman da muke da shi a zahiri akan faifai, kusa da wanda aka nema, kuma ya saukar da shi a cikin takamaiman daidaitawa.

Af, mun yi rikodin bidiyo a bainar jama'a na shekaru biyar na ƙarshe na taron masu haɓaka tsarin babban lodi. HighLoad++. Kalli, koyo, raba da biyan kuɗi zuwa YouTube channel.

Hakanan zamu iya ƙara dabaru na samfur da yawa a wurin. Misali, zamu iya ƙara alamomin ruwa daban-daban ta amfani da sigogi na URL, zamu iya blur, blur ko hotuna pixelate. Wannan shine lokacin da muke so mu nuna hoton mutum, amma ba ma so mu nuna fuskarsa, wannan yana aiki da kyau, an aiwatar da shi a nan.

Me muka samu? Mun sami maki uku na kasancewar, ƙimar dabara mai kyau, kuma a lokaci guda ba mu da CPU marasa aiki akan waɗannan injunan. Yanzu ya zama, ba shakka, mafi mahimmanci fiye da da. Muna bukatar mu ba kanmu motoci masu ƙarfi, amma yana da daraja.

Wannan ya shafi dawo da hotuna. Komai anan a bayyane yake kuma a bayyane yake. Ina tsammanin ban gano Amurka ba, kusan kowane CDN yana aiki ta wannan hanyar.

Kuma, mafi mahimmanci, ƙwararren mai sauraro na iya samun tambaya: me yasa ba kawai canza komai zuwa CDN ba? Zai kasance kusan iri ɗaya; duk CDN na zamani na iya yin wannan. Kuma akwai dalilai da dama.

Na farko hotuna ne.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Wannan yana ɗaya daga cikin mahimman abubuwan abubuwan more rayuwa, kuma muna buƙatar iko sosai gwargwadon iko. Idan wannan wani nau'i ne na mafita daga mai siyar da wani ɓangare na uku, kuma ba ku da wani iko a kansa, zai yi muku wahala sosai ku zauna tare da shi lokacin da kuke da babban bayanan bayanai, da kuma lokacin da kuke da babban kwarara. na buƙatun mai amfani.

Bari in ba ku misali. Yanzu, tare da kayan aikin mu, za mu iya, alal misali, idan akwai wasu matsaloli ko ƙwanƙwasawa a ƙarƙashin ƙasa, je wurin na'ura kuma ku rikice a can, in mun gwada da magana. Za mu iya ƙara tarin wasu ma'auni waɗanda kawai muke buƙata, za mu iya gwaji ta wata hanya, duba yadda wannan ya shafi zane-zane, da sauransu. Yanzu ana tattara ƙididdiga da yawa akan wannan gungu na caching. Kuma muna duban shi lokaci-lokaci kuma muna ɗaukar lokaci mai tsawo muna bincika wasu abubuwan da ba su da kyau. Idan ya kasance a gefen CDN, zai zama da wuya a sarrafa. Ko kuma, alal misali, idan wani irin hatsari ya faru, mun san abin da ya faru, mun san yadda za mu rayu da shi da kuma yadda za mu shawo kan shi. Wannan shine ƙarshe na farko.

Ƙarshe ta biyu kuma ita ce ta tarihi, saboda tsarin ya daɗe yana tasowa, kuma akwai buƙatun kasuwanci daban-daban a matakai daban-daban, kuma ba koyaushe suke dacewa da ra'ayin CDN ba.

Kuma abin da ke tafe daga na baya shi ne

Gine-gine don adanawa da raba hotuna a cikin Badoo

Wannan saboda akan caches na hoto muna da takamaiman dabaru, waɗanda koyaushe ba za'a iya ƙara su akan buƙata ba. Yana da wuya cewa kowane CDN zai ƙara muku wasu abubuwa na al'ada a buƙatarku. Misali, ɓoye URLs idan ba kwa son abokin ciniki ya sami damar canza wani abu. Kuna so ku canza URL akan uwar garken ku ɓoye shi, sannan ku aika wasu sigogi masu ƙarfi a nan.

Wane ƙarshe wannan ya nuna? A cikin yanayinmu, CDN ba shine mafi kyawun madadin ba.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Kuma a cikin yanayin ku, idan kuna da takamaiman buƙatun kasuwanci, to zaku iya aiwatar da abin da na nuna muku cikin sauƙi cikin sauƙi. Kuma wannan zai yi aiki daidai tare da bayanin martaba iri ɗaya.

Amma idan kuna da wani nau'in bayani na gabaɗaya, kuma aikin ba takamaiman ba ne, zaku iya ɗaukar CDN cikin aminci. Ko kuma idan lokaci da albarkatu sun fi mahimmanci a gare ku fiye da sarrafawa.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Kuma CDN na zamani suna da kusan duk abin da na gaya muku yanzu. Ban da ƙari ko ragi wasu fasali.

Wannan game da ba da hotuna ne.

Bari yanzu mu ci gaba kadan a cikin na baya da kuma magana game da ajiya.

2013 yana wucewa.

Gine-gine don adanawa da raba hotuna a cikin Badoo

An ƙara sabar caching, matsalolin aiki sun tafi. Komai yana lafiya. Dataset yana girma. Tun daga 2013, muna da kusan sabobin 80 da ke da alaƙa da ajiya, kuma game da caching 40 a kowace DC. Wannan shine terabytes 560 na bayanai akan kowane DC, watau. game da petabyte a duka.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Kuma tare da haɓakar tarin bayanai, farashin aiki ya fara tashi sosai. Menene wannan yake nufi?

Gine-gine don adanawa da raba hotuna a cikin Badoo

A cikin wannan zane da aka zana - tare da SAN, tare da injuna da caches da aka haɗa da shi - akwai maki da yawa na gazawa. Idan mun riga mun magance gazawar caching sabobin a da, duk abin da ya fi ko žasa tsinkaya da fahimta, amma a gefen ajiya duk abin ya fi muni.

Na farko, cibiyar sadarwa ta Storage Area Network (SAN) kanta, wanda zai iya kasawa.

Abu na biyu, ana haɗa shi ta hanyar na'urorin gani zuwa na'urori na ƙarshe. Ana iya samun matsaloli tare da katunan gani da walƙiya.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Tabbas, ba su da yawa kamar na SAN kanta, amma, duk da haka, waɗannan ma abubuwan da ba su da tushe.

Na gaba ita ce injin kanta, wanda ke haɗa da ma'ajiyar. Hakanan yana iya kasawa.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Gabaɗaya, muna da maki uku na gazawa.

Bugu da ari, ban da wuraren gazawar, akwai kulawa mai nauyi na ajiyar kanta.

Wannan hadadden tsari ne mai tarin yawa, kuma injiniyoyin tsarin na iya samun wahalar aiki da shi.

Kuma na ƙarshe, mafi mahimmancin batu. Idan gazawa ta faru a kowane ɗayan waɗannan maki uku, muna da damar mara sifili na rasa bayanan mai amfani saboda tsarin fayil na iya faɗuwa.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Bari mu ce tsarin fayil ɗin mu ya karye. Da fari dai, dawowarsa yana ɗaukar lokaci mai tsawo - yana iya ɗaukar mako guda tare da adadi mai yawa. Na biyu kuma, a ƙarshe, da alama za mu iya ƙarewa da ɗimbin fayilolin da ba za a iya fahimta ba waɗanda za su buƙaci a haɗa su ko ta yaya cikin hotunan masu amfani. Kuma muna hadarin rasa bayanai. Hadarin yana da yawa. Kuma sau da yawa irin waɗannan yanayi suna faruwa, kuma mafi yawan matsalolin da ke tasowa a cikin dukan wannan sarkar, mafi girman haɗarin.

Dole ne a yi wani abu game da wannan. Kuma mun yanke shawarar cewa mu kawai bukatar madadin da bayanai. Wannan a zahiri mafita ce bayyananne kuma mai kyau. Me muka yi?

Gine-gine don adanawa da raba hotuna a cikin Badoo

Wannan shine yadda uwar garken mu tayi kama lokacin da aka haɗa ta da ma'ajiyar a da. Wannan babban sashe ɗaya ne, na'urar toshe ce kawai wacce a zahiri ke wakiltar tudu don ajiya mai nisa ta hanyar gani.

Mun ƙara kashi na biyu kawai.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Mun sanya ajiya na biyu kusa da shi (abin farin ciki, ba shi da tsada sosai dangane da kuɗi), kuma muka kira shi ɓangaren ajiyar ajiya. Hakanan ana haɗa ta ta na'urorin gani kuma tana kan injin guda ɗaya. Amma muna buƙatar ko ta yaya mu daidaita bayanan tsakanin su.

Anan kawai muna yin jerin gwano a kusa.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Ba ta da aiki sosai. Mun san ba mu da isassun bayanai. Jerin layi ne kawai tebur a cikin MySQL wanda aka rubuta layukan kamar "kana buƙatar adana wannan hoton". Tare da kowane canji ko lodawa, muna kwafi daga babban ɓangaren zuwa madadin ta amfani da asynchronous ko kawai wani nau'in ma'aikacin bango.

Sabili da haka koyaushe muna da sassa biyu masu daidaituwa. Ko da wani ɓangare na wannan tsarin ya kasa, za mu iya ko da yaushe canza babban bangare tare da madadin, kuma duk abin da zai ci gaba da aiki.

Amma saboda haka, nauyin karatun yana ƙaruwa sosai, saboda ... Baya ga abokan ciniki da suke karantawa daga babban sashe, saboda suna fara kallon hoton a can (yana da kwanan nan a can), sannan su nemi shi a madadin, idan ba su same shi ba (amma NGINX kawai yana yin haka). tsarin mu kuma shine ƙari madadin yanzu yana karantawa daga babban bangare. Ba wai wannan ya kasance ƙugiya ba, amma ba na so in ƙara kaya ba, da gaske, kamar haka.

Kuma mun ƙara faifai na uku, wanda ƙaramin SSD ne, muka kira shi buffer.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Yadda yake aiki yanzu.

Mai amfani yana loda hoto zuwa madaidaicin, sannan a jefa wani taron cikin jerin gwano yana nuna cewa yana buƙatar kwafi zuwa sassa biyu. An kwafi, kuma hoton yana rayuwa a kan ma'ajin na ɗan lokaci (ka ce, rana ɗaya), sannan kawai an share shi daga can. Wannan yana haɓaka ƙwarewar mai amfani sosai, saboda mai amfani yana loda hoto, a matsayin mai mulkin, buƙatun nan da nan sun fara bi, ko kuma shi da kansa ya sabunta shafin kuma ya sabunta shi. Amma duk ya dogara da aikace-aikacen da ke yin lodawa.

Ko, alal misali, wasu mutanen da ya fara nuna kansu suna aika buƙatun bayan wannan hoton. Har yanzu bai kasance a cikin cache ba; buƙatun farko na faruwa da sauri. Mahimmanci iri ɗaya ne kamar daga cache hoto. A hankali ajiya ba ya cikin wannan kwata-kwata. Kuma idan bayan kwana ɗaya aka wanke shi, an riga an adana shi a kan mashin ɗin mu, ko kuma, mai yiwuwa, babu wanda ke buƙatar shi kuma. Wadancan. Kwarewar mai amfani a nan ta girma sosai saboda irin wannan sauƙin magudi.

To, kuma mafi mahimmanci: mun daina rasa bayanai.

Gine-gine don adanawa da raba hotuna a cikin Badoo

A ce mun tsaya mai yiwuwa rasa bayanai, saboda ba mu rasa shi da gaske ba. Amma akwai hadari. Mun ga cewa wannan maganin yana da kyau, amma yana da kyau, amma yana da dan kadan kamar magance alamun matsalar, maimakon magance ta gaba daya. Kuma wasu matsaloli sun kasance a nan.

Na farko, wannan wani batu ne na gazawa a cikin nau'in mai masaukin jiki da kansa wanda duk wannan injin ke gudana a kai, bai tafi ba.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Na biyu, har yanzu akwai matsaloli tare da SANs, nauyin kula da su, da sauransu. Ba wai abu ne mai mahimmanci ba, amma ina so in yi ƙoƙarin rayuwa ba tare da shi ba.

Kuma mun sanya nau'i na uku (a gaskiya, na biyu a gaskiya) - sigar ajiyar. Me yayi kama?

Wannan shi ne abin da ya kasance -

Gine-gine don adanawa da raba hotuna a cikin Badoo

Babban matsalolinmu shine gaskiyar cewa wannan mai masaukin baki ne.

Da fari dai, muna cire SANs saboda muna son yin gwaji, muna son gwada rumbun kwamfyuta na gida kawai.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Wannan ya riga ya kasance 2014-2015, kuma a wannan lokacin halin da ake ciki tare da faifai da ƙarfin su a cikin runduna ɗaya ya zama mafi kyau. Mun yanke shawarar me zai hana mu gwada shi.

Sa'an nan kuma mu kawai dauki madadin partition da kuma jiki canja shi zuwa wani daban na'ura.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Don haka, muna samun wannan zane. Muna da motoci guda biyu waɗanda ke adana bayanan bayanai iri ɗaya. Suna adana wa juna gaba ɗaya kuma suna aiki tare da bayanai akan hanyar sadarwar ta hanyar layin asynchronous a cikin MySQL iri ɗaya.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Me ya sa wannan ke aiki da kyau saboda muna da ƴan bayanai. Wadancan. idan rubutu ya kasance kwatankwacin karatu, watakila za mu sami wasu nau'ikan hanyoyin sadarwa da matsaloli. Akwai ƙaramin rubutu, karatu mai yawa - wannan hanyar tana aiki da kyau, watau. Ba kasafai muke kwafin hotuna tsakanin waɗannan sabobin biyu ba.

Ta yaya wannan ke aiki, idan kun duba kaɗan daki-daki.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Loda Ma'auni kawai yana zaɓar runduna bazuwar tare da nau'i-nau'i da loda zuwa gare ta. A lokaci guda kuma, a dabi'ance yana duba lafiyarsa kuma yana tabbatar da cewa motar ba ta fado ba. Wadancan. yana loda hotuna kawai zuwa uwar garken kai tsaye, sannan ta hanyar layin da bai dace ba duk ana kwafi zuwa maƙwabcinsa. Tare da upload duk abin da yake musamman sauki.

Aikin yana da ɗan wahala.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Lua ya taimake mu a nan, saboda yana iya zama da wahala a yi irin wannan dabaru akan vanilla NGINX. Da farko mun yi buƙatu zuwa uwar garken farko, duba ko hoton yana nan, saboda yuwuwar za a iya loda shi, misali, zuwa maƙwabci, amma har yanzu bai iso nan ba. Idan hoton yana nan, yana da kyau. Nan da nan muna ba shi ga abokin ciniki kuma, mai yiwuwa, cache shi.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Idan ba a can ba, muna yin buƙatu ne kawai ga maƙwabcinmu kuma muna da tabbacin za mu karɓa daga can.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Wannan. sake za mu iya cewa: za a iya samun matsaloli tare da aiki, saboda akwai akai zagaye tafiye-tafiye - da hoto da aka uploaded, ba a nan, muna yin biyu buƙatun maimakon daya, wannan ya kamata aiki a hankali.

A halin da muke ciki, wannan ba ya aiki a hankali.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Muna tattara gungun ma'auni akan wannan tsarin, kuma ƙimar wayo na irin wannan tsarin shine kusan 95%. Wadancan. Lalacewar wannan ajiyar ba ta da yawa, kuma saboda wannan an kusan ba mu garantin, bayan an sanya hoton, za mu ɗauki shi a karon farko kuma ba za mu je ko'ina ba sau biyu.

To me kuma muka samu wanda yake da kyau sosai?

A baya can, muna da babban ɓangaren wariyar ajiya, kuma muna karanta su a jere. Wadancan. Koyaushe muna bincika kan babban farko, sannan a madadin. Wani motsi ne.

Yanzu muna amfani da karatu daga inji guda biyu lokaci guda. Muna rarraba buƙatun ta amfani da Round Robin. A cikin ƙaramin adadin lokuta muna yin buƙatu biyu. Amma gabaɗaya, yanzu muna da yawan adadin karatu sau biyu kamar yadda muke da shi a da. Kuma nauyin ya ragu sosai a kan injunan aikawa da kai tsaye a kan injinan ajiya, waɗanda mu ma muke da su a lokacin.

Dangane da hakurin kuskure. A gaskiya, wannan shi ne abin da muka fi yi yaƙi dominsa. Tare da haƙurin kuskure, komai ya zama mai girma a nan.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Mota daya ta lalace.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Ba matsala! Injiniyan tsarin ba zai iya farkawa da dare ba, zai jira har sai da safe, babu wani mummunan abu da zai faru.

Idan ma wannan na'ura ta gaza, layin ba ya aiki, shi ma babu wata matsala, sai kawai a fara tara gungumen a kan na'ura mai rai, sannan a kara da shi a kan layin, sannan a kan motar da za ta yi. shiga aiki bayan wani lokaci.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Abu ɗaya tare da kulawa. Muna kashe ɗaya daga cikin injin ɗin kawai, mu cire shi da hannu daga duk wuraren tafki, yana daina karɓar zirga-zirga, muna yin wani nau'in kulawa, muna gyara wani abu, sannan mu mayar da shi zuwa sabis, kuma wannan ajiyar yana kamawa da sauri. Wadancan. kowace rana, lokacin saukar mota ɗaya yana kamawa cikin mintuna biyu. Wannan hakika kadan ne. Tare da hakuri na kuskure, na sake cewa, komai yana da kyau a nan.

Wadanne sakamako za a iya cimma daga wannan tsarin sakewa?

Mun sami haƙurin kuskure.

Sauƙi don amfani. Tun da injinan suna da rumbun kwamfyuta na gida, wannan ya fi dacewa daga yanayin aiki ga injiniyoyin da ke aiki da shi.

Mun sami izinin karatu sau biyu.

Wannan kyauta ce mai kyau ban da haƙurin kuskure.

Amma akwai kuma matsaloli. Yanzu muna da haɓakar haɓakar wasu abubuwan da suka shafi wannan, saboda tsarin ya zama 100% a ƙarshe.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Dole ne mu ce, a cikin wani aiki na baya, koyaushe tunani: "Wane uwar garken muke gudana yanzu?", "Shin da gaske akwai hoto na yanzu a nan?" da dai sauransu. Wannan, ba shakka, an nade shi duka, kuma ga mai tsara shirye-shiryen da ke rubuta dabaru na kasuwanci, a bayyane yake. Amma, duk da haka, wannan babban hadadden Layer ya bayyana. Amma a shirye muke mu haƙura da wannan don musanya alherin da muka samu daga gare ta.

Kuma a nan ma wani rikici ya taso.

Na ce da farko cewa adana duk abin da ke kan rumbun kwamfyuta na gida ba shi da kyau. Kuma yanzu na ce muna son shi.

Haka ne, hakika, bayan lokaci yanayin ya canza da yawa, kuma yanzu wannan hanyar yana da fa'idodi da yawa. Da fari dai, muna samun aiki mafi sauƙi.

Abu na biyu, ya fi amfani, saboda ba mu da waɗannan masu sarrafa atomatik ko haɗin kai zuwa ɗakunan diski.

Akwai injuna masu yawa a wurin, kuma waɗannan ƴan faifai ne kawai da aka haɗa a nan akan injin ɗin zuwa wani hari.

Amma akwai kuma rashin amfani.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Wannan ya fi kusan sau 1,5 tsada fiye da amfani da SAN koda a farashin yau. Saboda haka, mun yanke shawarar cewa ba za mu yi gaba gaɗi mu juyar da manyan tarin mu zuwa motoci masu rumbun kwamfyuta na gida ba kuma muka yanke shawarar barin mafita ga matasan.

Rabin injunan mu suna aiki tare da rumbun kwamfyuta (da kyau, ba rabi ba - tabbas kashi 30). Sauran kuma tsofaffin motoci ne wadanda a da suke da tsarin ajiyar farko. Mu kawai muka sake hawa su, tunda ba ma buƙatar sabbin bayanai ko wani abu, kawai mun matsar da tudun daga runduna ta zahiri zuwa biyu.

Kuma yanzu muna da tarin karatu, kuma mun fadada shi. Idan a baya mun dora ma'aji daya akan na'ura daya, yanzu muna hawa hudu, misali, akan guda biyu. Kuma yana aiki lafiya.

Bari mu ɗan taƙaita abin da muka cim ma, da abin da muka yi yaƙi dominsa, da ko mun yi nasara.

Sakamakon

Muna da masu amfani - kusan miliyan 33.

Muna da maki uku na kasancewar - Prague, Miami, Hong Kong.

Suna dauke da wani Layer caching, wanda ya ƙunshi motoci masu saurin faifai na gida (SSDs), wanda injina masu sauƙi daga NGINX, access.log da Python daemons ke gudana, waɗanda ke sarrafa duk wannan kuma suna sarrafa cache.

Idan kuna so, kuna cikin aikinku, idan hotuna ba su da mahimmanci a gare ku kamar yadda suke a gare mu, ko kuma idan ikon sarrafa kasuwanci tare da saurin haɓakawa da farashin albarkatun yana cikin wata hanyar a gare ku, to zaku iya maye gurbin shi cikin aminci. tare da CDN, CDN na zamani suna da kyau.

Na gaba ya zo da Layer ɗin ajiya, wanda a cikinsa muke da gungu na nau'ikan injuna waɗanda ke tallafawa juna, ana kwafi fayiloli daga juna zuwa wani a duk lokacin da suka canza.

Bugu da ƙari, wasu daga cikin waɗannan injuna suna aiki tare da rumbun kwamfyuta na gida.

Wasu daga cikin waɗannan injunan ana haɗa su da SANs.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Kuma, a gefe guda, ya fi dacewa don amfani da ɗan ƙarami, a gefe guda, yana dacewa dangane da yawan jeri da farashin kowane gigabyte.

Wannan shi ne taƙaitaccen bayani game da gine-ginen abin da muka samu da kuma yadda duk ya ci gaba.

Wasu ƙarin shawarwari daga kyaftin, masu sauƙaƙa.

Na farko, idan kun yanke shawarar ba zato ba tsammani kuna buƙatar haɓaka duk abin da ke cikin kayan aikin hoto, auna farko, saboda watakila babu abin da ke buƙatar haɓakawa.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Bari in ba ku misali. Muna da tarin injuna waɗanda ke aika hotuna daga haɗe-haɗe a cikin hira, kuma shirin yana aiki a can tun 2009, kuma babu wanda ke fama da shi. Kowa yana lafiya, kowa yana son komai.

Don aunawa, da farko rataya gungun ma'auni, duba su, sannan ku yanke shawarar abin da ba ku ji daɗi da abin da kuke buƙatar ingantawa. Domin auna wannan, muna da kayan aiki mai sanyi mai suna Pinba.

Yana ba ku damar tattara cikakken ƙididdiga daga NGINX don kowane buƙatu da lambobin amsawa, da rarraba lokuta - duk abin da kuke so. Yana da ɗaure zuwa kowane nau'in tsarin nazari daban-daban, sannan zaku iya duba shi duka da kyau.

Da farko mun auna shi, sannan muka inganta shi.

Bugu da kari. Muna inganta karatu tare da cache, rubutu tare da sharding, amma wannan batu ne a bayyane.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Bugu da kari. Idan har yanzu kun fara gina tsarin ku, to yana da kyau ku yi hotuna azaman fayiloli marasa canzawa. Domin nan da nan za ku rasa dukkanin matsalolin matsaloli tare da ɓarna cache, tare da yadda dabaru zasu sami daidaitaccen sigar hoto, da sauransu.

Gine-gine don adanawa da raba hotuna a cikin Badoo

A ce ka loda dari, sannan ka jujjuya shi, ka sanya shi ya zama fayil daban-daban. Wadancan. babu buƙatar tunani: yanzu zan ajiye ɗan sarari, rubuta shi zuwa fayil iri ɗaya, canza sigar. Wannan ko da yaushe ba ya aiki da kyau kuma yana haifar da ciwon kai mai yawa daga baya.

Batu na gaba. Game da sake girman kan tashi.

A baya can, lokacin da masu amfani suka ɗora hoto, nan da nan mun yanke duk tarin masu girma dabam don kowane lokaci, don abokan ciniki daban-daban, kuma duk suna kan faifai. Yanzu mun yi watsi da wannan.

Mun bar manyan girma guda uku kawai: ƙanana, matsakaici da babba. Mu kawai muna rage komai daga girman da ke bayan wanda aka tambaye mu a Uport, kawai muna yin ƙasa kuma mu ba mai amfani.

CPU na caching Layer a nan ya zama mai rahusa fiye da idan muka ci gaba da sabunta waɗannan masu girma dabam akan kowane ajiya. Bari mu ce muna son ƙara sabon, wannan zai ɗauki wata guda - gudanar da rubutun a ko'ina wanda zai yi duk wannan da kyau, ba tare da lalata gungu ba. Wadancan. Idan kuna da damar da za ku zaɓa a yanzu, yana da kyau a yi ƙananan girman jiki kamar yadda zai yiwu, amma don akalla wasu rarraba shine, ce, uku. Kuma duk abin da za'a iya canza shi kawai akan tashi ta amfani da shirye-shiryen da aka yi. Duk abu ne mai sauqi kuma ana iya samunsa yanzu.

Kuma ƙarin asynchronous madadin yana da kyau.

Kamar yadda aikinmu ya nuna, wannan makirci yana aiki sosai tare da jinkirin kwafin fayilolin da aka canza.

Gine-gine don adanawa da raba hotuna a cikin Badoo

Batu na ƙarshe kuma a bayyane yake. Idan kayan aikin ku ba su da irin waɗannan matsalolin a yanzu, amma akwai wani abu da zai iya karye, tabbas zai karye idan ya ɗan ƙara. Saboda haka, yana da kyau a yi tunani game da wannan a gaba kuma kada ku fuskanci matsaloli tare da shi. Abin da nake so in ce ke nan.

Lambobin sadarwa

» 0rsh201
» Badoo Blog

Wannan rahoto shine kwafin ɗaya daga cikin mafi kyawun jawabai a taron masu haɓaka tsarin manyan kaya HighLoad++. Ya rage ƙasa da wata guda har zuwa taron HighLoad++ 2017.

Mun riga mun shirya shi Shirin taro, yanzu ana yin jadawali sosai.

A wannan shekara muna ci gaba da bincika batun gine-gine da ƙira:

Har ila yau, muna amfani da wasu daga cikin waɗannan kayan a cikin kwas ɗin horonmu na kan layi akan haɓaka tsarin ɗaukar nauyi HighLoad.Jagora jerin haruffa ne na musamman da aka zaɓa, labarai, kayan aiki, bidiyo. Littafinmu ya riga ya ƙunshi abubuwa na musamman fiye da 30. Haɗa!

source: www.habr.com

Add a comment