Manyan aikace-aikacen kan layi sun yi nisa a cikin shekaru ashirin da suka gabata. Waɗannan sabbin abubuwa sun canza tunaninmu game da haɓaka software. Facebook, Instagram, da Twitter, alal misali, duk dandamali ne masu iya daidaitawa.
Dole ne a gina waɗannan tsarin don sarrafa ɗimbin cunkoso da bayanai tunda biliyoyin mutane suna amfani da su a lokaci guda a duk faɗin duniya. Wannan lokacin ne tsarin tsarin shiga hoto.
Tsarin kafa gine-gine, musaya, da bayanai don tsarin da ya dace da wasu sharuɗɗa an san shi da tsarin tsarin. Ta hanyar haɗin kai da ingantaccen tsarin, ƙirar tsarin yana biyan bukatun kasuwancin ku ko ƙungiyar ku.
Da zarar kamfani ko ƙungiyar ku sun ƙayyade ma'auni, za ku iya fara haɗa su cikin ƙirar tsarin jiki wanda ya dace da bukatun masu amfani da ku.
Ko kun zaɓi tafiya tare da haɓaka haɓaka, hanyoyin kasuwanci, ko haɗuwa da su biyu, yadda kuke tsara tsarin ku zai ƙayyade yadda kuke gina shi.
Za mu yi cikakken kallon tsarin tsarin tsarin lokaci na Twitter a cikin wannan sakon, cikakke tare da koyawa. Mu fara.
Mataki na 1: Fahimtar shari'ar amfani da ƙuntatawa
Yi amfani da akwati
- Mai amfani yana loda tweet.
- Sabis ɗin yana aika sanarwar turawa da imel zuwa mabiyan tweets.
- Ana duban lokacin mai amfani (aikin daga mai amfani)
- Mai amfani yana kallon tsarin lokacin gida (aikin mutanen da mai amfani ke bi)
- Mai amfani yana neman keywords.
- Sabis ɗin yana da isa ga gaske.
Ya wuce iyaka
- Ana aika Tweets zuwa Twitter Firehose da sauran rafukan ta amfani da wannan sabis ɗin.
- Sabis ɗin yana cire tweets dangane da saitunan gani na mai amfani.
- Idan mai amfani shima baya bin wanda ake amsawa, boye amsar.
- Kula da zaɓin 'ɓoye retweets'.
- Analytics
Matsaloli & zato
Zato na Jiha
- Ba a warwatse zirga-zirga daidai gwargwado.
- Ya kamata ya zama mai sauƙi don aika tweet.
- Sai dai idan kuna da miliyoyin mabiya, aika tweet zuwa duk mabiyan ku yakamata kuyi sauri.
- Akwai masu amfani miliyan 100 masu aiki.
- Biliyan 15 tweets kowane wata ko tweets miliyan 500 kowace rana
- Kowane tweet yana da fanout na bayarwa 10 akan matsakaici.
- Kowace rana, fanout yana ba da tweets biliyan 5.
- Fanout yana ba da tweets biliyan 150 kowane wata.
- Biliyan 250 na karanta buƙatun kowane wata
- Biliyan 10 bincike na wata-wata
tafiyar lokaci
- Jadawalin lokaci yakamata ya zama mai sauƙi don kewayawa.
- Twitter ya fi karatu fiye da rubutu.
- Inganta don saurin karanta tweet
- Amfani da Tweet yana ɗaukar lokaci.
search
- Dole ne tsarin bincike ya zama mai sauri.
- Yana ɗaukar lokaci don bincika.
Yi lissafin amfani
Girman kowane tweet:
- 8 bytes tweet id
- 32 bytes mai amfani-id
- 140 bytes na rubutu
- kafofin watsa labarai - matsakaicin 10 KB
- Jimlar: ~ 10 KB
Kowane wata, 150 TB na sabobin abun ciki na tweet ana samarwa.
- * tweets miliyan 500 kowace rana * kwanaki 30 a kowane wata * 10 KB a kowane tweet
- A cikin shekaru uku, an sami 5.4 PB na sabobin abun ciki na tweet.
Akwai buƙatun karantawa 100,000 kowace daƙiƙa.
- * (buƙatun 400 a sakan daya / buƙatun biliyan 1 a kowane wata) biliyan 250 karanta buƙatun kowane wata
Akwai tweets 6,000 kowace daƙiƙa.
- * (buƙatun 400 a sakan daya / buƙatun biliyan 1 a kowane wata) tweets biliyan 15 kowane wata
A kan fanout, ana aika tweets dubu 60 kowane daƙiƙa.
- Fanout yana ba da tweets biliyan 150 kowane wata* (buƙatun 400 a sakan daya / buƙatun biliyan 1 a kowane wata).
buƙatun 4,000 don bayani kowane daƙiƙa
- * (buƙatun 400 a sakan daya / buƙatun biliyan 1 a kowane wata) biliyan 10 a kowane wata
Wasu juyi mai amfani
- Kowane wata, daƙiƙa miliyan 2.5 na wucewa.
- Buƙatun miliyan 2.5 a kowane wata a buƙatun 1 a sakan daya
- Buƙatun miliyan 100 a kowane wata x buƙatun 40 a sakan daya
- buƙatun biliyan 1 a kowane wata = buƙatun 400 a sakan daya
Mataki na 2: Tsari mai girma
Mataki na 3: Bayyana ainihin abubuwan haɗin gwiwa
Za mu iya ajiye tweets na mai amfani don cika tsarin lokacin mai amfani (aikin daga mai amfani) a cikin bayanan alaƙa idan sun ƙaddamar da tweet. Yana da wahala a isar da tweets da haɓaka tsarin lokacin gida (aikin daga daidaikun mutane da mai amfani ke bi).
Za a rinjayi bayanan alaƙa na yau da kullun ta hanyar fitar da tweets ga duk masu bibiya (samar da tweets dubu 60 a kowace daƙiƙa). Wataƙila za mu so tafiya tare da ma'ajin bayanai da sauri kamar NoSQL database ko Ƙwaƙwalwar ajiya.
Karanta 1 MB a jere daga ƙwaƙwalwar ajiya yana ɗaukar kusan 250 micro seconds, amma karantawa daga SSD yana ɗaukar tsawon lokaci 4, kuma karanta daga diski yana ɗaukar tsawon sau 80.
Ana iya amfani da Store Object don adana bayanai kamar hotuna da bidiyo.
- Sabar Yanar Gizo, wanda ke aiki azaman wakili na baya, yana karɓar tweet daga Abokin ciniki.
- Ana aika buƙatar zuwa uwar garken API ta Rubutu ta Sabar Yanar Gizo.
- API ɗin Rubutun yana adana tweet zuwa bayanan SQL a cikin jerin lokutan mai amfani.
Write API yana tuntuɓar Sabis ɗin Fan-Out, kuma yana aiwatar da ayyuka masu zuwa.
- Nemo mabiyan mai amfani a cikin Ma'ajiyar Ƙwaƙwalwar ajiya ta hanyar tambayar Sabis ɗin zane mai amfani.
- A Ma'ajiyar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwa ) ana ajiye shi a cikin jerin lokutan gida na mabiyan mai amfani.
- Mabiya 1,000 = 1,000 duba da sakawa = O(n) aiki.
- An adana tweet ɗin a cikin Sabis ɗin Fihirisar Bincike don saurin bincike.
- Ana amfani da Store Store don adana kafofin watsa labarai.
- Yana aika faɗakarwa ga masu bibiya ta hanyar Sabis na Fadakarwa.
- Don aika faɗakarwa ba tare da ɓata lokaci ba, yana amfani da Queue.
Za mu iya amfani da jerin Redis na asali tare da tsari mai zuwa idan Cache ƙwaƙwalwar ajiyar mu shine Redis:
Za a sabunta lokacin gida na mai amfani tare da sabon tweet, wanda za'a adana shi a cikin Ma'ajiyar Ƙwaƙwalwar ajiya. Za mu yi amfani da API na REST na jama'a masu zuwa:
Mai amfani yana kallon lokacin mai amfani.
- Sabar gidan yanar gizon tana karɓar buƙatun lokacin mai amfani daga Abokin ciniki.
- Ana aika buƙatar zuwa uwar garken API ɗin Read ta Sabar Yanar Gizo.
- API ɗin Karatu yana tambayar Database ɗin SQL don lokacin mai amfani.
API ɗin REST zai yi aiki daidai da tsarin lokacin gida, ban da cewa duk tweets zasu samo asali daga mai amfani maimakon mutanen da suke bi.
Mai amfani yana neman kalmomi masu mahimmanci:
- Sabar Yanar Gizo tana karɓar buƙatun nema daga Abokin ciniki.
- Ana aika buƙatar zuwa uwar garken API ɗin Bincike ta Sabar Yanar Gizo.
Mataki na 4: Tsarin lokaci na Twitter
Ƙirƙirar tsarin lokaci aiki ne mai wahala. Ana buƙatar uwar garken lokacin da ke haɗa yanar gizo ko sabar aikace-aikace.
Duk lokacin da mai amfani ya shiga, sabis ɗin lokaci yana kula da sabbin tweets daga masu amfani a cikin tebirin mai bi da sabuntawa ko sabunta jadawalin lokacin mai amfani.
Ba mu aiwatar da kowane nau'i na tsarin martaba a nan; a maimakon haka, muna ɗauka cewa manyan tweets 5 daga mabiyan mai amfani an gabatar da su a cikin tsarin lokaci don tsara lokacin halitta. Za mu iya kula da yanke wartsakewar 50-tweet. Har yanzu muna daina wartsakewa ko gina tsarin lokaci bayan an kai wannan bakin har sai mai amfani ya sabunta shafin.
Babban latency da damuwa na aiki zasu fito daga ƙirƙirar ciyarwar mai amfani kai tsaye. Madadin haka, ƙirƙirar rafi ta layi wanda za'a iya gabatarwa nan take ita ce hanya mafi kyau don haɓaka aiki. Gudun sabar sabar lokaci da aka keɓe waɗanda ke ping uwar garken aikace-aikacen akai-akai don sabunta ciyarwar dangane da lokacin da aka ƙirƙira shi.
Algorithm ɗin martaba yakamata yayi la'akari da mahimman sigina kuma ya ba da nauyi don tabbatar da cewa ba'a mamaye tsarin lokacin mai amfani da abu daga ɗaya ko fiye na asusun da suke bi ba.
Hakazalika, zamu iya zaɓar fasalulluka masu alaƙa da dacewa da kowane abun ciyarwa, kamar adadin abubuwan so, sharhi, hannun jari, da lokacin ɗaukaka. Ya kamata a yi amfani da kowane ma'auni don ƙididdige tweet, sannan a yi amfani da wannan matsayi don nuna tweets akan lokaci.
Shin ya kamata mu ci gaba da faɗakar da masu amfani lokacin da sabon abun ciki don ciyarwarsu ta samu? Masu amfani za su iya samun fa'ida a faɗakar da su lokacin da sabbin bayanai suka samu. A kan na'urorin hannu, duk da haka, lokacin amfani da bayanai yana da tsada sosai, yana iya ɓarna bandwidth.
Sakamakon haka, ba za mu iya zaɓar kada mu tura bayanai zuwa na'urorin hannu ba kuma a maimakon haka mu ƙyale masu amfani su "Ja don Refresh" don sabbin rubuce-rubuce.
Mataki na 5: Ƙirar ƙira
Matsala mai yuwuwa shine Sabis ɗin Fanout. Masu amfani da Twitter da ke da miliyoyin mabiya za su jira mintuna da yawa don fitar da tweets ɗin su. Wannan na iya haifar da tsere tare da amsawa ga tweet, wanda zamu iya gujewa ta hanyar sake yin odar tweets a lokacin hidima.
Hakanan zamu iya hana yada tweets daga mutane masu yawan mabiya. Madadin haka, muna iya yin binciken tweets daga mutane masu bi sosai, haɗa sakamakon binciken tare da sakamakon lokacin gida na mai amfani, sannan mu sake tsara tweets a lokacin hidima.
Ƙarin abubuwan haɓakawa sun haɗa da:
- Ajiye ƴan tweets ɗari kawai a cikin Ma'ajiyar Ƙwaƙwalwar ajiya don kowane tsarin lokaci na gida.
- A cikin Ma'ajiyar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwaƙwal na Ƙwaƙwalwa na Ƙwaƙwalwa ) masu aiki ne kawai ke ajiyewa.
- Za mu iya sake gina tarihin tarihi daga SQL Database idan mai amfani bai yi aiki ba a cikin kwanaki 30 da suka gabata.
- Don gano ko wanene mai amfani, yi amfani da Sabis ɗin zane mai amfani.
- Ƙara tweets zuwa Ma'ajiyar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwaƙwalwar Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙaddamarwa (SQL ) yayi.
- Sabis ɗin Bayani na Tweet na iya adana ƙimar tweets na wata ɗaya kawai.
- A cikin Sabis na Bayanin Mai amfani, masu amfani masu aiki kawai aka adana.
- Don kiyaye latency low, Ƙirar Bincike zai fi dacewa ya buƙaci kiyaye tweets a cikin ƙwaƙwalwar ajiya.
Kammalawa
Kodayake Twitter babbar kungiya ce, tana da mafi kyau fahimtar tsarin tsarin. Na yi iya ƙoƙarina don samar muku da wani babban matakin bayyani na lokacin Twitter.
Ina fatan kun sami bayanai masu amfani daga gare ta kuma za ku iya amfani da su da kyau.
Leave a Reply