Inyathelo 3: Ukupapasha
I-ClipBucket, umthombo ovulekileyo we-YouTube clone enokufakwa kwiseva yakho
Into yokuqala ndizamile
Okothusayo kukuba, iClipBucket ayinayo imiyalelo yokufaka. Enkosi Ku
Inxalenye yobunzima yayikukuba izikripthi zofakelo lweClipBucket zaphulwa ngokupheleleyo. Ngelo xesha mna
I-ClipBucket isebenze kwimodeli yokubonisana-bakhupha ikhowudi yabo mahhala kwaye bahlawuliswe ngoncedo lokuthunyelwa. Kuye kwacaca kum ukuba inkampani eyenza imali ngenkxaso ehlawulwayo mhlawumbi ayinamdla kakhulu wokuba abathengi bazifakele ngokwabo imveliso.
I-MediaGoblin, enye indlela yangoku
Emva kweenyanga zokukhungatheka ngeClipBucket, ndajonga kwiinketho ezikhoyo kwaye ndazifumana
I-MediaGoblin inezinto ezininzi ezimnandi. Ngokungafaniyo ne-ClipBucket kwi-PHP engabonakaliyo, i-MediaGoblin ibhalwe kwi-Python, ulwimi endinalo ulwazi oluninzi lwekhowudi. Yitya
Docker bubuchwephesha obenza imeko-bume yokuzimela ukuze isicelo siqhube naphi na. Ndisebenzisa iDocker ngaphakathiezininzi zeeprojekthi zakhe .
Ubunzima obumangalisayo bokwenza kwakhona i-MediaGoblin
Ndicinge ukuba ukuthumela umfanekiso weMediaGoblin docker kuya kuba ngumsebenzi omncinci. Ewe, ayizange isebenze ngolo hlobo.
Umfanekiso ogqityiweyo ubungaqulathanga imisebenzi emibini eyimfuneko:
- Uqinisekiso
- I-MediaGoblin yenza i-portal yemidiya yoluntu ngokuzenzekelayo, kwaye ndandifuna indlela yokuthintela ukufikelela kubantu bangaphandle.
- Ukuguqula iikhowudi
- Ngalo lonke ixesha ukhuphela ividiyo, iMediaGoblin izama ukuyigqithisa ukuze isasazeke ngokufanelekileyo. Ukuba ividiyo ilungele ukusasazwa ekuqaleni, i-transcoding ithoba umgangatho.
- MediaGoblin ibonelela
ikhubaza i-transcoding ngokusebenzisa iinketho zoqwalaselo , kodwa oku akunakukwenziwa kumfanekiso weDocker okhoyo.
Ewe, akukho ngxaki. Umfanekiso weDocker uza nayo
Ngelishwa, umfanekiso weDocker awusakhiwanga ngoku.
Kwiinyanga ezimbalwa kamva kwenzeka into efanayo. Lilonke, ikhonkco lokuxhomekeka kweMediaGoblin liye laphula ulwakhiwo lwam izihlandlo ezininzi kule minyaka imbalwa idlulileyo, kwaye ixesha lokugqibela yenzeka kanye ngelixa ndibhala eli nqaku. Ekugqibeleni ndapapasha
Nangona kunjalo, emva kweeyure ezininzi zomzabalazo, ekugqibeleni ndakwazi ukwakha kunye nokuqwalasela iMediaGoblin kumfanekiso weDocker. Kwasele kulula apho
Inyathelo 4. Ukusingatha
Kuba iMediaGoblin yayiqhuba iDocker kwikhompyuter yam yasekhaya, inyathelo elilandelayo yayikukuyithumela kwiseva yelifu ukuze usapho luyibukele ividiyo.
MediaGoblin kunye nengxaki yokugcina ividiyo
Kukho amaqonga amaninzi athatha umfanekiso weDocker kwaye awubambe kwi-URL yoluntu. Ukubamba kukuba ukongeza kwi-app ngokwayo, i-33 GB yeefayile zevidiyo kwafuneka ipapashwe. Kwakunokwenzeka ukuzifaka nzima kumfanekiso weDocker, kodwa oko kuya kuba nzima kwaye kubi. Ukutshintsha umgca omnye woqwalaselo kuya kufuna ukuthunyelwa kwakhona kwe-33 GB yedatha.
Xa ndisebenzisa iClipBucket ndayisombulula ingxaki nge
Umahluko yayikukuba iClipBucket yabaleka kumatshini wokwenyani, ngelixa iMediaGoblin yayibaleka kwisitya seDocker. Apha, ukunyuswa kweefayile ukusuka kwisitoreji selifu kuye kwaba nzima kakhulu. Ndichithe iiyure ezininzi ndisombulula zonke iingxaki ndaza ndabhala ngazo
Ukuhlanganiswa kokuqala kweMediaGoblin kunye nokugcinwa kweLifu likaGoogle, endithetha ngalo
Emva kweeveki ezininzi zokulungelelanisa onke amacandelo, yonke into yasebenza. Ngaphandle kokwenza naluphi na utshintsho kwikhowudi yeMediaGoblin, ndiyiqhathile ekufundeni nasekubhaleni iifayile zemidiya kwindawo yokugcina ilifu likaGoogle.
Ingxaki kuphela yayikukuba iMediaGoblin yacotha ngamanyala. Kuthathe imizuzwana engama-20 epheleleyo ukuba ii-thumbnails zevidiyo zilayishwe kwiphepha lasekhaya. Ukuba uthe watsibela phambili ngelixa ubukele ividiyo, iMediaGoblin iya nqumama imizuzwana eli-10 engapheliyo ngaphambi kokuba iphinde idlale kwakhona.
Ingxaki ephambili yayikukuba iividiyo kunye nemifanekiso ithathe indlela ende, ejikelezayo eya kumsebenzisi. Kwakufuneka bahambe ukusuka kugcino lwelifu likaGoogle nge-gcsfuse ukuya kwiMediaGoblin, iNginx-kwaye kuphela emva koko bafika kwisikhangeli somsebenzisi. Eyona nto iphambili ibiyi-gcsfuse, engalungiselelwanga isantya. Abaphuhlisi balumkisa malunga nokulibaziseka okukhulu ekusebenzeni kwesixhobo kwiphepha eliphambili leprojekthi:
Hlela izilumkiso
Ngokufanelekileyo, isikhangeli kufuneka silande iifayile ngokuthe ngqo kwiLifu likaGoogle, sigqitha kuyo nayiphi na imigangatho ephakathi. Ungayenza njani le nto ngaphandle kokuntywila kwi-codebase yeMediaGoblin okanye ukongeza ingqiqo yokudityaniswa kweLifu likaGoogle?
I-Sub_filter trick kwi nginx
Ngethamsanqa ndafumana isisombululo esilula, nangona kunjalo kancinane imbi. Ndongeze kuqwalaselo olungagqibekanga.conf kwiNginx
sub_filter "/mgoblin_media/media_entries/" "https://storage.googleapis.com/MY-GCS-BUCKET/media_entries/";
sub_filter_once off;
Kuseto lwam, iNginx isebenze njengommeli phakathi kweMediaGoblin kunye nomsebenzisi wokugqibela. Lo myalelo ungasentla uyalela i-Nginx ukuba ikhangele kwaye ibuyisele zonke iimpendulo ze-MediaGoblin ze-HTML ngaphambi kokuba zisebenze kumsebenzisi wokugqibela. I-Nginx ithatha indawo yazo zonke iindlela ezihambelanayo kwiifayile zeMediaGoblin zemidiya ngee-URL ezisuka kugcino lwelifu likaGoogle.
Umzekelo, iMediaGoblin ivelisa iHTML ngolu hlobo:
<video width="720" height="480" controls autoplay>
<source
src="/mgoblin_media/media_entries/16/Michael-riding-a-bike.mp4"
type="video/mp4">
</video>
I-Nginx itshintsha impendulo:
<video width="720" height="480" controls autoplay>
<source
src="https://storage.googleapis.com/MY-GCS-BUCKET/media_entries/16/Michael-riding-a-bike.mp4"
type="video/mp4">
</video>
Ngoku yonke into isebenza njengoko bekulindelwe:
I-Nginx iphinda ibhale iimpendulo kwiMediaGoblin ukuze abathengi bakwazi ukucela iifayile zemidiya ngqo kugcino lukaGoogle kwilifu
Elona candelo lilungileyo malunga nesisombululo sam kukuba ayifuni naluphi na utshintsho kwikhowudi yeMediaGoblin. Umyalelo wemigca emibini ye-Nginx udibanisa ngaphandle komthungo iMediaGoblin kunye neLifu likaGoogle, nangona iinkonzo zingazi nto malunga nomnye.
Qaphela:: Esi sisombululo sifuna ukuba iifayile ezigcinwe kwilifu likaGoogle zifundeke ngumntu wonke. Ukunciphisa umngcipheko wokufikelela okungagunyaziswanga, ndisebenzisa igama lebhakethi elide, elingahleliwe (umz.
mediagoblin-39dpduhfz1wstbprmyk5ak29
) kwaye uqinisekise ukuba inkqubo yolawulo lofikelelo lwebhakethi ayivumeli abasebenzisi abangagunyaziswanga ukuba babonise imixholo yolawulo.
Imveliso yokugqibela
Ngeli xesha bendinesisombululo esipheleleyo, esisebenzayo. I-MediaGoblin ibaleke ngokonwaba kwisikhongozeli sayo kwiqonga lelifu likaGoogle, ke bekungafuneki ukuba icocwe okanye ihlaziywe rhoqo. Yonke into kwinkqubo yam yayizenzekela kwaye iphinda iphindeke, ivumela ukuhlelwa okulula okanye ukubuyisela umva kwiinguqulelo zangaphambili.
Intsapho yam yayiyithanda kakhulu indlela ekulula ngayo ukubukela iividiyo. Ngoncedo lwe-Nginx hack echazwe ngasentla, ukusebenza ngeevidiyo kuye kwakhawuleza njengakwiYouTube.
Isikrini sokujonga sijongeka ngolu hlobo:
Imixholo yekhathalogu yevidiyo yosapho ngethegi "Eyona nto ingcono"
Ukucofa kwi-thumbnail kuzisa isikrini esinje:
Ukujonga ikliphu enye kwiseva yemidiya
Emva kweminyaka yokusebenza, kwaba luncedo kakhulu ukunika amalungu osapho ithuba lokubukela iividiyo zethu ngendlela efanayo yomsebenzisi efana ne-YouTube endandiyifuna kuqala.
Ibhonasi: Nciphisa iindleko ukuya ngaphantsi kwe $1 ngenyanga
Awuzibukeli iividiyo zasekhaya rhoqo, kuphela emva kweenyanga ezimbalwa. Usapho lwam ngokudibeneyo luvelise malunga neeyure ze-20 zetrafikhi ngonyaka, kodwa umncedisi wayeqhuba i-15/99,7. Ndihlawule i-$ XNUMX ngenyanga kwi-server eyayiphantsi kwe-XNUMX% yexesha.
Ekupheleni kwe2018, uGoogle wayikhulula imveliso
Ngezizathu endingazikhumbuliyo, i-Cloud Run ayizange isebenze nomfanekiso wam weMediaGoblin. Kodwa ngokufika kwe-Cloud Run ndakhumbula oko
Ngomncedisi wesicelo samahhala, iindleko kuphela kukugcinwa kwedatha. Ugcino lwengingqi olusemgangathweni lukaGoogle luxabisa i-2,3 cent/GB. I-archive yevidiyo ithatha i-33 GB, ngoko ndihlawula kuphela i-77 cent ngenyanga.
Esi sisombululo sixabisa i-$ 0,77 kuphela ngenyanga
Iingcebiso kwabo baceba ukuzama
Kucacile ukuba le nkqubo yandithatha ixesha elide. Kodwa ndiyathemba ukuba eli nqaku liza kukunceda ugcine i-80-90% yomzamo wokwenza idijithali kunye nokupapasha iividiyo zakho zasekhaya. Kwicandelo elahlukileyo ungafumana
- Ngexesha ledijithali kunye nesigaba sokuhlela, gcina imetadata eninzi kangangoko kunokwenzeka.
- Ulwazi oluxabisekileyo lusoloko lurekhodwa kwiilebhile zeekhasethi zevidiyo.
- Gcina umkhondo ukuba yeyiphi ikliphu edutyulwe kweyiphi iteyiphu kwaye ingalandelelani.
- Bhala phantsi umhla wokudubula, onokuvela kwividiyo.
- Cinga ngokuhlawulela iinkonzo zobuchwephesha bedijithali.
- uza ku kakhulu kunzima kwaye kuyabiza ukuzidibanisa ngokomgangatho wokufakwa kwedijithali.
- Kodwa hlala kude nenkampani ebizwa ngokuba yi-EverPresent (ndithumele umyalezo ukuba ufuna iinkcukacha).
- Ukuba uyazenzela ngokwakho, thenga iHDD.
- Ividiyo yenkcazo esemgangathweni engaxinzekanga ithatha i-100-200 MB ngomzuzu.
- Ndandigcine yonke into kum
Synology DS412 + (10 TB).
- Rekhoda imetadata kwifomati eqhelekileyo engabotshelelwanga kwisicelo esithile.
- Iinkcazo zekliphu, iikhowudi zexesha, imihla, njl.
- Ukuba ugcina imetadata kwifomati yesicelo-ethile (okanye okubi ngakumbi, ungayigcini kwaphela), awuyi kukwazi ukuphinda wenze umsebenzi ukuba uthatha isigqibo sokusebenzisa isisombululo esahlukileyo.
- Njengoko uhlela, ubona uninzi lwemetadata eluncedo kwividiyo. Uya kuphulukana nazo ukuba awuzigcini.
- Kwenzeka ntoni kwividiyo?
- Ngubani obhalisiweyo apho?
- Ibhalwe nini le nto?
- Phawula iividiyo zakho ozithandayo.
- Ukunyaniseka, uninzi lweevidiyo zasekhaya ziyadika.
- Ndisebenzisa eyona thegi βyeyona ilungileyoβ kwiziqendu endizithandayo kwaye ndizivule xa ndifuna ukubukela iividiyo ezihlekisayo.
- Lungiselela isisombululo esibanzi kwangoko kangangoko ukuze inkqubo ihambe ngqo ukusuka ekuqaleni ukuya ekugqibeleni.
- Ndizame ukwenza zonke iikhasethi zibe yidijithali kuqala, emva koko ndihlele zonke iikhasethi, njl.
- Akwaba bendiqale ngeteyiphu enye kwaye ndenze wonke umsebenzi ngayo. Emva koko ndiza kuqonda ukuba zeziphi izigqibo kwaye ngawaphi amanqanaba achaphazela umphumo wokugqibela.
- Gcina urekhoda ubuncinci.
- Ngalo lonke ixesha uhlela okanye uguqulela ikliphu, wehlisa umgangatho wayo.
- Yenza umboniso wakho okrwada ube ngowona mgangatho uphezulu, emva koko uguqule ikliphu nganye kanye kanye kwifomathi enikelwa ngabakhangeli ngokwemveli.
- Sebenzisa esona sisombululo silula ukupapasha iiklip zevidiyo.
- Yenza ufakelo.
- Ukuhlelwa kwevidiyo yindlela eyonwabisayo yokudibanisa elona xesha lilungileyo kwiividiyo ezininzi.
- Eyona nto iphambili ekuhleleni umculo. Umzekelo, umxholo uyamangalisa
Ikhephu elicothayo ukusuka kuZwelonke, oku kukufumanisa kwam.
umthombo: www.habr.com