පියවර 3: ප්රකාශනය කිරීම
ClipBucket, ඔබේම සේවාදායකයේ ස්ථාපනය කළ හැකි විවෘත මූලාශ්ර YouTube ක්ලෝනයකි
මම උත්සාහ කළ පළමු දෙය
පුදුමයට කරුණක් නම්, ClipBucket හට ස්ථාපන උපදෙස් කිසිවක් නොමැත. ස්තුති වන්නට
දුෂ්කරතාවයේ කොටසක් වූයේ ClipBucket ස්ථාපන ස්ක්රිප්ට් සම්පූර්ණයෙන්ම කැඩී යාමයි. ඒ අවස්ථාවේ අයි
ClipBucket උපදේශන ආකෘතියක් මත ක්රියාත්මක විය - ඔවුන් ඔවුන්ගේ කේතය නොමිලේ නිකුත් කළ අතර යෙදවීමේ සහාය සඳහා අය කරන ලදී. ගෙවන ලද ආධාරකයෙන් මුදල් උපයන සමාගමක් පාරිභෝගිකයින් විසින්ම නිෂ්පාදනය ස්ථාපනය කිරීමට එතරම් උනන්දුවක් නොදක්වන බව ක්රමයෙන් මට වැටහුණි.
MediaGoblin, වඩාත් නවීන විකල්පයක්
ClipBucket සමඟ මාස ගණනාවක කලකිරීමෙන් පසුව, මම පවතින විකල්ප සොයා බැලුවෙමි
MediaGoblin සතුව බොහෝ හොඳ දේවල් තිබේ. අපිරිසිදු PHP හි ClipBucket මෙන් නොව, MediaGoblin ලියා ඇත්තේ Python භාෂාවෙන්, මට කේතීකරණ අත්දැකීම් රාශියක් ඇත. කන්න
Docker යෙදුමක් ඕනෑම තැනක ධාවනය කිරීමට ස්වයං පාලන පරිසරයක් නිර්මාණය කරන තාක්ෂණයකි. මම භාවිතා කරන්නේ Docker inඔහුගේ බොහෝ ව්යාපෘති .
MediaGoblin නැවත ඩොකර්කරණය කිරීමේ පුදුම සහගත දුෂ්කරතාවය
MediaGoblin ඩොකර් රූපය යෙදවීම සුළුපටු කාර්යයක් වනු ඇතැයි මම උපකල්පනය කළෙමි. හොඳයි, එය එතරම් සාර්ථක වූයේ නැත.
නිමි රූපයේ අවශ්ය කාර්යයන් දෙකක් අඩංගු නොවීය:
- සත්යාපනය
- MediaGoblin පෙරනිමියෙන් පොදු මාධ්ය ද්වාරයක් නිර්මාණය කරයි, මට පිටස්තරයින්ට ප්රවේශය සීමා කිරීමට ක්රමයක් අවශ්ය විය.
- ට්රාන්ස්කෝඩිං
- ඔබ වීඩියෝවක් බාගත කරන සෑම අවස්ථාවකම, MediaGoblin එය ප්රශස්ත ප්රවාහයක් සඳහා ට්රාන්ස්කෝඩ් කිරීමට උත්සාහ කරයි. වීඩියෝව ප්රවාහය සඳහා මුලින් සූදානම් නම්, ට්රාන්ස්කෝඩින් කිරීම ගුණාත්මක භාවය අඩු කරයි.
- MediaGoblin සපයයි
වින්යාස විකල්ප හරහා ට්රාන්ස්කෝඩිං අක්රීය කිරීම , නමුත් පවතින ඩොකර් රූපයක මෙය කළ නොහැක.
හොඳයි, ගැටලුවක් නැහැ. ඩොකර් රූපය සමඟ පැමිණේ
අවාසනාවකට මෙන්, ඩොකර් රූපය දැනට පවතින රූපයෙන් ගොඩනඟා නැත.
මාස කිහිපයකට පසු එයම සිදු විය. සමස්තයක් වශයෙන්, MediaGoblin යැපුම් දාමය පසුගිය වසර කිහිපය තුළ මගේ ගොඩනැගීම කිහිප වතාවක් බිඳ දමා ඇති අතර, එය අවසන් වරට සිදු වූයේ මා මෙම ලිපිය ලියන අතරතුරේදීය. මම අවසානයේ ප්රකාශයට පත් කළෙමි
කොහොම හරි පැය ගාණක් මහන්සි වෙලා අන්තිමට මට පුළුවන් වුනා MediaGoblin එක Docker image එකක ගොඩනගාගෙන configure කරන්න. එය දැනටමත් එහි පහසු විය
පියවර 4. සත්කාරකත්වය
MediaGoblin මගේ දේශීය පරිගණකයේ Docker ධාවනය කරන බැවින්, ඊළඟ පියවර වූයේ එය ක්ලවුඩ් සේවාදායකයකට යෙදවීමයි. එවිට පවුලේ අයට වීඩියෝව නැරඹීමට හැකි විය.
MediaGoblin සහ වීඩියෝ ගබඩා කිරීමේ ගැටලුව
ඩොකර් රූපයක් ගෙන එය පොදු URL එකක සත්කාරකත්වය සපයන වේදිකාවන් බොහොමයක් තිබේ. අල්ලා ගැනීම නම්, යෙදුමට අමතරව, වීඩියෝ ගොනු 33 GB ප්රකාශ කිරීමට සිදු විය. ඒවා ඩොකර් රූපයකට තද කේත කිරීමට හැකි විය, නමුත් එය අපහසු සහ කැත වනු ඇත. වින්යාස කිරීමේ එක් පේළියක් වෙනස් කිරීම සඳහා 33 GB දත්ත නැවත යෙදවීම අවශ්ය වේ.
මම ClipBucket භාවිතා කරන විට මම ගැටලුව විසඳා ගත්තෙමි
වෙනස වූයේ ClipBucket සැබෑ අතථ්ය යන්ත්රයක ධාවනය වූ අතර MediaGoblin ධාවනය වූයේ ඩොකර් කන්ටේනරයක වීමයි. මෙන්න, වලාකුළු ගබඩාවෙන් ගොනු සවි කිරීම වඩා දුෂ්කර විය. මම පැය දුසිම් ගණනක් සියලු ගැටලු විසඳා ඒ ගැන ලිව්වෙමි
මම කතා කරන Google Cloud ගබඩාව සමඟ MediaGoblin හි මූලික ඒකාබද්ධතාවය
සියලුම සංරචක සකස් කිරීමෙන් සති කිහිපයකට පසු, සියල්ල ක්රියාත්මක විය. MediaGoblin ගේ කේතයේ කිසිදු වෙනසක් නොකර, Google cloud storage වෙත මාධ්ය ගොනු කියවීමට සහ ලිවීමට මම එය වංචා කළෙමි.
එකම ප්රශ්නය වූයේ MediaGoblin අසභ්ය ලෙස මන්දගාමී වීමයි. වීඩියෝ සිඟිති රූ මුල් පිටුවට පූරණය වීමට සම්පූර්ණ තත්පර 20ක් ගත විය. ඔබ වීඩියෝවක් නරඹන අතරතුර ඉදිරියට පැන්නේ නම්, MediaGoblin නැවත ධාවනය කිරීමට පෙර නිමක් නැති තත්පර 10ක් විරාම ගන්වනු ඇත.
ප්රධාන ගැටළුව වූයේ වීඩියෝ සහ පින්තූර පරිශීලකයා වෙත දිගු, වටරවුම් මාර්ගයක් ගෙන යාමයි. ඔවුන්ට ගූගල් ක්ලවුඩ් ආචයනයේ සිට gcsfuse හරහා MediaGoblin, Nginx වෙත යාමට සිදු විය - පසුව පමණක් ඔවුන් පරිශීලකයාගේ බ්රව්සරයට පිවිසියේය. ප්රධාන බාධකය වූයේ වේගය සඳහා ප්රශස්ත නොවන gcsfuse ය. ව්යාපෘතියේ ප්රධාන පිටුවෙහිම උපයෝගිතා ක්රියාකාරිත්වයේ විශාල ප්රමාදයන් ගැන සංවර්ධකයින් අනතුරු අඟවයි:
අනතුරු ඇඟවීම්
ඉතා මැනවින්, බ්රවුසරය ඕනෑම අතරමැදි ස්ථරයක් මග හරිමින් Google Cloud වෙතින් කෙලින්ම ගොනු ලබා ගත යුතුය. MediaGoblin කේත පදනමට කිමිදීමකින් තොරව හෝ සංකීර්ණ Google Cloud integration logic එකතු නොකර ඔබට මෙය කරන්නේ කෙසේද?
nginx හි උප_පෙරහන උපක්රමය
වාසනාවකට මෙන්, මම සරල විසඳුමක් සොයා ගත්තෙමි ටිකක් කැතයි. මම Nginx හි default.conf වින්යාසයට එක් කළෙමි
sub_filter "/mgoblin_media/media_entries/" "https://storage.googleapis.com/MY-GCS-BUCKET/media_entries/";
sub_filter_once off;
මගේ සැකසුමේදී, Nginx MediaGoblin සහ අවසාන පරිශීලකයා අතර ප්රොක්සියක් ලෙස ක්රියා කළේය. ඉහත විධානය Nginx හට සියලුම MediaGoblin HTML ප්රතිචාර අවසන් පරිශීලකයාට සේවය කිරීමට පෙර ඒවා සෙවීමට සහ ප්රතිස්ථාපනය කිරීමට උපදෙස් දෙයි. Nginx විසින් MediaGoblin මාධ්ය ගොනු වෙත සියලුම සාපේක්ෂ මාර්ග Google cloud storage වෙතින් URL සමඟ ප්රතිස්ථාපනය කරයි.
උදාහරණයක් ලෙස, MediaGoblin මෙවැනි HTML ජනනය කරයි:
<video width="720" height="480" controls autoplay>
<source
src="/mgoblin_media/media_entries/16/Michael-riding-a-bike.mp4"
type="video/mp4">
</video>
Nginx පිළිතුර වෙනස් කරයි:
<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>
දැන් බලාපොරොත්තු වූ පරිදි සියල්ල සිදුවෙමින් පවතී:
Nginx MediaGoblin වෙතින් ප්රතිචාර නැවත ලියයි, එවිට සේවාලාභීන්ට Google cloud storage වෙතින් සෘජුවම මාධ්ය ගොනු ඉල්ලා සිටිය හැක
මගේ විසඳුමේ හොඳම කොටස නම් එයට MediaGoblin කේතයට කිසිදු වෙනසක් අවශ්ය නොවන බවයි. Nginx හි පේළි දෙකේ විධානය MediaGoblin සහ Google Cloud බාධාවකින් තොරව ඒකාබද්ධ කරයි, සේවාවන් එකිනෙකා ගැන කිසිවක් නොදන්නා නමුත්.
අදහස් දැක්වීම්: මෙම විසඳුම සඳහා Google ක්ලවුඩ් ගබඩාවේ ඇති ගොනු සෑම කෙනෙකුටම කියවිය හැකි වීම අවශ්ය වේ. අනවසරයෙන් ප්රවේශ වීමේ අවදානම අවම කිරීම සඳහා, මම දිගු අහඹු බකට් නමක් භාවිතා කරමි (උදා.
mediagoblin-39dpduhfz1wstbprmyk5ak29
) සහ බාල්දියේ ප්රවේශ පාලන ප්රතිපත්තිය අනවසර පරිශීලකයින්ට නාමාවලියේ අන්තර්ගතය ප්රදර්ශනය කිරීමට ඉඩ නොදෙන බව තහවුරු කරන්න.
අවසාන නිෂ්පාදනය
මේ අවස්ථාවේදී මට සම්පූර්ණ, වැඩ කරන විසඳුමක් තිබුණා. MediaGoblin Google හි ක්ලවුඩ් වේදිකාවේ තමන්ගේම කන්ටේනරය තුළ සතුටින් දිව ගියේය, එබැවින් එය නිතර නිතර පැච් කිරීමට හෝ යාවත්කාලීන කිරීමට අවශ්ය නොවීය. මගේ ක්රියාවලියේ සෑම දෙයක්ම ස්වයංක්රීයව සහ ප්රතිනිෂ්පාදනය කළ හැකි වූ අතර, සරල සංස්කරණයන් හෝ පෙර අනුවාද වෙත ආපසු හැරීම් සඳහා ඉඩ ලබා දේ.
වීඩියෝ නැරඹීම කොතරම් පහසුද යන්න මගේ පවුලේ අය ඇත්තෙන්ම කැමති විය. ඉහත විස්තර කර ඇති Nginx හැක් ආධාරයෙන්, වීඩියෝ සමඟ වැඩ කිරීම YouTube හි මෙන් වේගවත් විය.
නැරඹුම් තිරය මේ වගේ ය:
"හොඳම" ටැගය මගින් පවුලේ වීඩියෝ නාමාවලියෙහි අන්තර්ගතය
සිඟිති රුව මත ක්ලික් කිරීමෙන් මෙවැනි තිරයක් දිස්වේ:
මාධ්ය සේවාදායකයක තනි ක්ලිප් එකක් බැලීම
වසර ගණනාවක වැඩ කිරීමෙන් පසු, මට මුලින් අවශ්ය පරිශීලක-හිතකාමී යූ ටියුබ් වැනි අතුරු මුහුණතෙහිම අපගේ වීඩියෝ නැරඹීමට පවුලේ සාමාජිකයින්ට අවස්ථාව ලබා දීම ඇදහිය නොහැකි තරම් ප්රතිලාභදායක විය.
ප්රසාද දීමනාව: මසකට $1 ට වඩා අඩු වියදම් අඩු කරන්න
ඔබ නිවසේ වීඩියෝ නිතර නරඹන්නේ නැත, සෑම මාස කිහිපයකට වරක් පමණි. මගේ පවුල සාමූහිකව වසරක් තුළ පැය 20ක පමණ ගමනාගමනයක් ජනනය කළ නමුත් සේවාදායකය 15/99,7 ක්රියාත්මක විය. මම XNUMX% ක් අඩු වූ සේවාදායකයක් සඳහා මාසිකව ඩොලර් XNUMX ක් ගෙවා ඇත.
2018 අවසානයේ Google විසින් නිෂ්පාදනය නිකුත් කරන ලදී
මට තවදුරටත් මතක නැති හේතු නිසා, Cloud Run මගේ MediaGoblin රූපය සමඟ ක්රියා කළේ නැත. ඒත් Cloud Run ආපු ගමන් මට ඒක මතක් උනා
නොමිලේ යෙදුම් සේවාදායකයක් සමඟ, එකම පිරිවැය දත්ත ගබඩා කිරීමයි. Google හි සම්මත කලාපීය ආචයනය ශත 2,3/GB වේ. වීඩියෝ සංරක්ෂිතය 33 GB ගනී, එබැවින් මම මසකට ගෙවන්නේ ශත 77 ක් පමණි.
මෙම විසඳුම මසකට ඩොලර් 0,77 ක් පමණි
උත්සාහ කිරීමට සැලසුම් කරන අය සඳහා උපදෙස්
පැහැදිලිවම මෙම ක්රියාවලිය මට බොහෝ කාලයක් ගත විය. නමුත් ඔබේ නිවසේ වීඩියෝ ඩිජිටල්කරණය කර ප්රකාශයට පත් කිරීමේ උත්සාහයෙන් 80-90%ක් ඉතිරි කර ගැනීමට මෙම ලිපිය ඔබට උපකාරී වනු ඇතැයි මම බලාපොරොත්තු වෙමි. වෙනම කොටසකින් ඔබට සොයාගත හැකිය
- ඩිජිටල්කරණය සහ සංස්කරණය කිරීමේ අදියරේදී, හැකි තරම් පාර-දත්ත සංරක්ෂණය කරන්න.
- වටිනා තොරතුරු බොහෝ විට වීඩියෝ කැසට් ලේබලවල සටහන් වේ.
- කුමන ක්ලිප් එක රූගත කළේ කුමන ටේප් එකකින් සහ කුමන අනුපිළිවෙලකින්ද යන්න නිරීක්ෂණය කරන්න.
- වීඩියෝවේ දිස්විය හැකි වෙඩි තැබීමේ දිනය ලියන්න.
- වෘත්තීය ඩිජිටල්කරණ සේවා සඳහා ගෙවීම ගැන සලකා බලන්න.
- ඔයා කරනු ඇත අතිශයින්ම ඩිජිටල්කරණයේ ගුණාත්මකභාවය අනුව ඒවා ගැලපීම දුෂ්කර හා මිල අධිකය.
- හැබැයි EverPresent කියන ආයතනයෙන් ඈත් වෙලා ඉන්න (විස්තර අවශ්ය නම් මට මැසේජ් කරන්න).
- ඔබ විසින්ම ඩිජිටල්කරණය කරන්නේ නම්, HDD මිලදී ගන්න.
- සම්පීඩනය නොකළ සම්මත විභේදන වීඩියෝව විනාඩියකට 100-200 MB ගතවේ.
- මම මගේ හැම දෙයක්ම තියාගත්තා
Synology DS412 + (10 TB).
- විශේෂිත යෙදුමකට බැඳී නැති යම් පොදු ආකෘතියකින් පාර-දත්ත වාර්තා කරන්න.
- ක්ලිප් විස්තර, කාල කේත, දින, ආදිය.
- ඔබ යෙදුම්-විශේෂිත ආකෘතියකින් පාර-දත්ත සුරකින්නේ නම් (හෝ වඩාත් නරක නම්, එය කිසිසේත් සුරැකිය නොහැක), ඔබ වෙනත් විසඳුමක් භාවිතා කිරීමට තීරණය කළහොත් ඔබට කාර්යය නැවත කිරීමට නොහැකි වනු ඇත.
- ඔබ සංස්කරණය කරන විට, ඔබට වීඩියෝවේ බොහෝ ප්රයෝජනවත් පාර-දත්ත දිස්වේ. ඔබ ඒවා ඉතිරි නොකළහොත් ඔබට ඒවා අහිමි වනු ඇත.
- වීඩියෝවේ සිදුවන්නේ කුමක්ද?
- එහි ලියාපදිංචි වී සිටින්නේ කවුද?
- මෙය පටිගත කළේ කවදාද?
- ඔබේ ප්රියතම වීඩියෝ සලකුණු කරන්න.
- ඇත්තම කිව්වොත්, බොහෝ නිවෙස් වීඩියෝ සෑහෙන්න නීරසයි.
- මම මගේ ප්රියතම ක්ලිප් වලට “හොඳම” ටැගය යොදන අතර මට විනෝදජනක වීඩියෝ නැරඹීමට අවශ්ය වූ විට ඒවා විවෘත කරමි.
- ක්රියාවලිය ආරම්භයේ සිට අවසානය දක්වා කෙලින්ම සිදු වන පරිදි හැකි ඉක්මනින් සවිස්තරාත්මක විසඳුමක් සංවිධානය කරන්න.
- මම මුලින්ම සියලුම පටි ඩිජිටල් කිරීමට උත්සාහ කළෙමි, පසුව සියලුම පටි සංස්කරණය කළෙමි.
- එක ටේප් එකකින් පටන් අරන් ඒකෙන් වැඩ ඔක්කොම කළා නම් හොඳයි. එවිට මට තේරේවි අවසාන ප්රතිඵලයට බලපාන්නේ කුමන තීරණ සහ කුමන අවස්ථා වලදීද යන්න.
- නැවත කේතනය කිරීම අවම මට්ටමක තබා ගන්න.
- ඔබ ක්ලිප් එකක් සංස්කරණය කරන හෝ නැවත සංකේතනය කරන සෑම අවස්ථාවකම, ඔබ එහි ගුණත්වය අඩු කරයි.
- අමු දර්ශන උපරිම ගුණත්වයෙන් ඩිජිටල් කරන්න, ඉන්පසු සෑම ක්ලිප් එකක්ම බ්රවුසර ස්වදේශිකව වාදනය කරන ආකෘතියට එක් වරක් ට්රාන්ස්කෝඩ් කරන්න.
- වීඩියෝ ක්ලිප් පළ කිරීමට හැකි සරලම විසඳුම භාවිතා කරන්න.
- ස්ථාපනය කරන්න.
- වීඩියෝ සංස්කරණය යනු වීඩියෝ කිහිපයකින් හොඳම අවස්ථාවන් ඒකාබද්ධ කිරීමට විනෝදජනක ක්රමයකි.
- සංස්කරණයේදී ප්රධානම දේ තමයි සංගීතය. උදාහරණයක් ලෙස, තේමාව විශ්මයජනකයි
මන්දගාමී හිම The National වෙතින්, මෙය මගේ පෞද්ගලික සොයා ගැනීමකි.
මූලාශ්රය: www.habr.com