ஒரு Node.js பெஞ்ச்மார்க் (benchmark), கோப்பின் அளவைப் பொறுத்து ஐந்து பிரபலமான video-API சேவைகளின் செயல்திறன் எவ்வாறு மாறுபடுகிறது என்பதைக் காட்டுகிறது. வேகத்தைக் குறைக்கப்பட்ட (throttled) 4G இணைப்பில் (10 Mbps), பெரிய கோப்புத் தேர்வில் FastPix முன்னிலை வகித்தது, அதேசமயம் சிறிய கிளிப்பிற்கு Cloudinary முன்னிலையில் இருந்தது.
இந்தத் தேர்வு ஏன் முக்கியமானது
Video-API வழங்குநர்கள் தங்களது சந்தைப்படுத்தல் பக்கங்களில் (marketing pages) தொடர்ந்து "மிக வேகமான பதிவேற்றம்" அல்லது "உடனடி பிளேபேக்" போன்ற வாசகங்களைப் பயன்படுத்துகின்றனர். இத்தகையக் கோரிக்கைகள் பொதுவாக ஒவ்வொரு வழங்குநரின் சிறந்த செயல்திறனை வெளிப்படுத்தும் வகையில் தேர்ந்தெடுக்கப்பட்ட சோதனை கோப்புகளை அடிப்படையாகக் கொண்டவை. ஒரு தயாரிப்புக் குழு இத்தகைய தலைப்புகளைக் கொண்டு ஒரு விற்பனையாளரைத் தேர்ந்தெடுக்கும்போது, விளம்பரப்படுத்தப்பட்ட மற்றும் நிஜ உலகத் தாமதத்திற்கு (latency) இடையே முரண்பாடு ஏற்பட வாய்ப்புள்ளது, குறிப்பாக அவர்களின் பயனர்கள் வெவ்வேறு அளவு அல்லது நெட்வொர்க் தரத்தைக் கொண்ட உள்ளடக்கத்தைப் பதிவேற்றும்போது.
பெஞ்ச்மார்க் எவ்வாறு உருவாக்கப்பட்டது
ஆசிரியர் ஒவ்வொரு பதிவேற்றத்திற்கும் இரண்டு அளவீடுகளை (metrics) அளவிடும் எளிய ஹார்னஸை (harness) Node.js-இல் எழுதினார்:
- Upload time – மூல பைட்டுகளை (raw bytes) API-க்கு அனுப்பத் தேவைப்படும் நேரத்தின் அளவு (வினாடிகளில்).
- Time-to-ready – பதிவேற்றத்தின் தொடக்கத்திலிருந்து வீடியோவை ஸ்ட்ரீம் செய்யக்கூடிய நிலை (அதாவது, API அந்தச் சொத்தை பிளே செய்யக்கூடியது என்று அறிவிக்கும் நிலை) வரும் வரையிலான இடைவெளி.
ஐந்து சேவைகள் ஒரே ஸ்கிரிப்ட் மூலம் இயக்கப்பட்டன: FastPix, Mux, api.video, Cloudinary, மற்றும் Gumlet. ஒரு சாதாரண மொபைல் 4G அனுபவத்தைப் பிரதிபலிக்கும் வகையில், 10 Mbps வேகத்திற்கு நெட்வொர்க் குறைக்கப்பட்டு, அனைத்துத் தேர்வுகளும் ஒரே இயந்திரத்திலிருந்து இயக்கப்பட்டன. இரண்டு பிரதிநிதித்துவக் கோப்புகள் பயன்படுத்தப்பட்டன:
- Large file: 177 MB, நீண்ட வடிவ உள்ளடக்கங்கள் அல்லது உயர் தெளிவுத்திறன் கொண்ட கேமரா மாஸ்டர்களைப் போன்றது.
- Small file: 65 MB, குறுகிய கிளிப்புகள் அல்லது சமூக ஊடகத் துண்டுகளைப் போன்றது.
இந்த ஹார்னஸ் பதிவேற்றத்தை தானியக்கமாக்கியது, பின்னர் வீடியோ "ready" நிலையை அடையும் வரை ஒவ்வொரு வழங்குநரின் status endpoint-ஐச் சரிபார்த்து, இரண்டு நேர முத்திரைகளையும் (timestamps) பதிவு செய்தது.
எண்கள் எதைக் காட்டுகின்றன
Large file (177 MB)
- FastPix மிகக் குறைந்த பதிவேற்ற நேரத்தையும், மிக விரைவான ஒட்டுமொத்த time-to-ready நேரத்தையும் பதிவு செய்தது, இது மொத்தத் தரவுப் பரிமாற்றங்களுக்கு (bulk transfers) ஒரு தெளிவான தலைவராக அதை மாற்றுகிறது.
- Mux மிக வேகமான cold-startup-ஐ வழங்கியது, அதாவது வீடியோ தயாராகக் குறிக்கப்பட்டவுடன் முதல் பிரேம் விரைவாகத் தோன்றியது.
Small file (65 MB)
- Cloudinary மற்ற அனைத்துச் சேவைகளையும் முந்தி, வெறும் 2 வினாடிகளில் கிளிப்பினைச் செயலாக்கியது.
- FastPix ஐந்தாவது இடத்திற்குத் தள்ளப்பட்டது.
ஒரு video API-ஐத் தேர்ந்தெடுப்பதற்கான தாக்கங்கள்
- Long-form அல்லது high-resolution பதிவேற்றங்கள் – மூலத் திறன் (raw throughput) மற்றும் உள்ளீட்டு வேகத்தில் (ingest speed) சிறந்து விளங்கும் சேவைகளுக்கு முன்னுரிமை அளிக்கவும். இந்தத் தேர்வில், FastPix ஒரு பாதுகாப்பான தேர்வாகும்.
- குறுகிய, தேவைக்கேற்பப் பயன்படுத்தும் (on-demand) கிளிப்புகள் – cold-startup தாமதத்தைக் குறைக்கும் API-களைத் தேர்ந்தெடுக்கவும். Cloudinary-இன் 2 வினாடி turnaround, அது உடனடி பிளேபேக் சூழல்களுக்குப் பொருத்தமானது என்பதைக் காட்டுகிறது.
வெறும் எண்களைத் தாண்டி, குழுக்கள் விலை நிலைகள் (pricing tiers), புவியியல் ரீதியான CDN கவரேஜ் மற்றும் transcoding விருப்பங்கள் அல்லது DRM போன்ற அம்சங்களைக் கருத்தில் கொள்ள வேண்டும். ஒரு வழங்குநரின் லீடர்போர்டு (leaderboard) ஒரு விரைவான சரிபார்ப்பிற்கு உதவலாம், ஆனால் அது குறிப்பிட்ட பணிச்சுமை சார்ந்த (workload-specific) சோதனைக்கு மாற்றாக இருக்கக்கூடாது.
உங்கள் சொந்தத் தேர்வை நடத்துதல்
- செயல்முறையை ஸ்கிரிப்ட் செய்யவும் (Script the flow) – ஒரு கோப்பைப் பதிவேற்றவும் மற்றும் “ready” ஃபிளாக் (flag) தோன்றும் வரை status endpoint-ஐச் சரிபார்க்கவும் நீங்கள் நம்பும் ஒரு மொழியை (Node.js, Python, போன்றவை) பயன்படுத்தவும்.
- சுற்றுச்சூழலைக் கட்டுப்படுத்தவும் (Control the environment) – மாறுபாடுகளைத் தவிர்க்க, ஒவ்வொரு வழங்குநரின் சோதனையையும் ஒரே இயந்திரம் மற்றும் நெட்வொர்க்கிலிருந்து இயக்கவும்.
- அலைவரிசையைக் குறைக்கவும் (Throttle bandwidth) – நீங்கள் எதிர்பார்க்கும் மிக மெதுவான பயனர் பிரிவைப் பிரதிபலிக்கும் வகையில் இணைப்பைக் கட்டுப்படுத்தவும் (எ.கா., 4G-க்கு 10 Mbps).
- உண்மையான சொத்துக்களைப் பயன்படுத்தவும் (Use real assets) – பொதுவான சோதனை கிளிப்புகளுக்குப் பதிலாக, உங்கள் தயாரிப்பின் வழக்கமான பதிவேற்றங்களைப் பிரதிபலிக்கும் காட்சிகளைப் பயன்படுத்தவும்; codec, resolution மற்றும் bitrate ஆகியவை உள்ளீட்டுப் பாதைகளை (ingest pipelines) பாதிக்கலாம்.
உண்மையிலேயே முக்கியத்துவம் வாய்ந்த ஒரே பெஞ்ச்மார்க் என்பது உங்கள் சொந்த டிராஃபிக் முறைகள் மற்றும் தர எதிர்பார்ப்புகளைப் பிரதிபலிப்பதே ஆகும்.
அடுத்து கவனிக்க வேண்டியவை
Video API-கள் வளர்ச்சியடையும் போது, அவை புதிய உள்ளீட்டுப் பாதைகள் (ingest pathways), எட்ஜ் கேச்சிங் அடுக்குகள் (edge caching layers) மற்றும் AI மூலம் இயக்கப்படும் transcoding ஆகியவற்றை அறிமுகப்படுத்துகின்றன. உங்கள் CI பைப்லைனில் (pipeline) ஒரு தானியக்க பெஞ்ச்மார்க்கை வைத்திருப்பது, பயனர்களைப் பாதிக்கும் முன் பிழைகளைக் (regressions) கண்டறிய உதவும். கீழே இணைக்கப்பட்டுள்ளதைப் போன்ற சமூகத்தால் பகிரப்பட்ட முடிவுகள், இந்தச் சூழலின் (ecosystem) தெளிவான பிம்பத்தை உருவாக்க உதவுகின்றன.
