Ինչո՞ ւ է կարևոր փորձարկել տեսախցիկը գործարկելուց առաջ
1) Ինչո՞ ւ է դա քննադատական հենց համար։
Ցածր ուշացումը որպես սննդի ֆիչ։ Լայվայում խողովակաշարի կամ հատվածի սխալը ուշ տոկոսադրույքն է, հակասական շրջանակը և վստահության հարվածը։
Ֆան-աութը հազարավոր հանդիսատեսների վրա։ Տրանսկոդերի պարամետրերում փոքր անճշտությունը մեծանում է ամբողջ հոսքի վրա զանգվածային ֆրիզի մեջ։
Անհասկանալի պահեր։ Ի տարբերություն VOD-ից, դուք չեք կարող «փոխել» 'շրջանակի ձախողումը = կորցրած իրադարձությունը։
Մրցույթի արժեքը։ 5-10 րոպե անհասանելիությունը ծեծում է եկամուտներով և NPS-ով, իսկ SLA-տուգանքները ՝ P & L- ով։
2) Ի՞ նչ փորձարկել (բաղադրիչների քարտեզը)
1. Ստուդիա 'տեսախցիկներ, լույս, ձայն, թայմկոդների համաժամեցում։
2. Encoding: x284/NVENC/Quick Disnc, GOP, IDR հաճախականությունը, պրոֆիլները։
3. Transcoding/ABR 'բիթերի սանդուղք, քայլերը www.0p-1080p, առանց «սև էկրանի»։
4. Տրանսպորտը ՝ WindRTC (DTIM-WINTP) ինտերակտիվ համար։ LL-HMS/DASH մասշտաբի համար։
5. Լրատվամիջոցները ՝ SFU/Origin, TURN-pul, origin-shield։
6. CDN 'multi-CDN, RUM-routing, հատվածների հավասարակշռություն։
7. Հաճախորդը 'նվագարկիչ, jitter-buffer, fallback, RUM հեռուստացույցի հավաքածու։
8. Անվտանգություն ՝ TFC 1։ 3, URL-ի ցնցումը, իրադարձությունների ստորագրումը։
9. Դիտարկումը 'չափումներ, լույսեր, հետքեր, ալերտներ։
3) Որակի մետրերը (SLI) և նպատակները (SLO)
SLI:- e2e ուշացում (glass-to-glass)
- startup time (մինչև առաջին շրջանակը)
- rebuffering ratio և միջին տևողությունը drop-frame rate/frames dropped հաճախականությունը (quality switches)
- Media RTC: RTT, packet loss, jitter, NACK/FEC մասը, TURN-relay
- LL-HMS: Հատվածների տոկոսը առաքվել է <աշխատանքային ժամանակ, մանիֆեստների/հատվածների սխալներ
- CDN: cache-hit, TTFB по PoP/ASN
SLO օրինակները
WebRTC e2e ≤ 2,5 с (95p), LL-HLS ≤ 5 с (95p)
startup: ≤ 1,5 с (WebRTC), ≤ 2,5 с (LL-HLS)
rebuffering ratio <0,5% packet loss 241% (95p), RTT 35120 մզ (95p)
CDN cache-hit ≥ 80%, origin egress ≤ 20%
4) Թեստավորման մեթոդը 'շերտերով
4. 1. Տեսախցիկ/ձայն/լույս
Շումոմերը և գունային քարտեզները։ էքսպոզիայի ստուգում և flicker-free։- Աուդիո տեսահոլովակի համաժամացումը (lip-կապույտ)։
- Շարժման թեստային ձևանմուշները («ճոճանակ «/քարտի ջրաղացը) ստուգելու համար։
4. 2. Encoding/transcoding
Պրոֆիլներ ՝ GOP 242 s, խելացի B-frames, keyframe on request։
CPU x274 vs GPU NVENC հատկությունների համեմատությունը նույն բիթրեներում։
Պրոֆիլների միջև անցումները (1080p 35720p 35540p) '«սև» կադրերի բացակայությունը։
4. 3. Տրանսպորտը և լրատվամիջոցները
Media RTC: SFU-ում, որակի քայքայումը loss/jitter աճի, NACK/PLI-ի ճիշտ։
TURN 'relay տոկոսը, թողունակությունը, IP-ի երկրաչափությունը։- LL-HMS: partial-segments (200-500 ms), ռուսական մանիֆեստներ, www.fetch։
4. 4. CDN и edge
Փորձարկումները/կապի պրովայդերներ, TTFB, cache-hit, մանիֆեստի սխալ։- Routing multi-CDN-ը RUM ազդանշանների վրա, ֆեյլերի սցենարները։
4. 5. Հաճախորդ/նվագարկիչ
Վարքագիծը վատ ցանցում 'ձգձգումներ, fps անկում, բուֆերիզացիա, արագ keyframe-2019։
Բջջային սարքերը/զննարկիչները 'համատեղելիություն, էներգախնայողություն, արտադրողի հետաձգված նախաձեռնություն։
5) Թեստերի և սցենարների տեսակները
A. ֆունկցիոնալ
Մեկնարկը/կանգառը, m.ru/unm.ru, դադար/վերականգնումը (հանդիսատեսի ֆիդայի համար)։- Timers-ի ճկունությունը (եթե ինտերակտիվ)։
Բ. Արտադրող
Load: Պլանավորված NO-ը։
Stress: 351,5-2,0 օգտագործողներ, միացությունների աճը։
Soak: 6-12 ժամ կայուն հեռարձակում, հիշողության/ձայնագրիչների արտահոսք։
Բուրսթ 'կարճ միացումների լավան (join-leave), «reids» իմիտացիա։
C ցանցային «փոթորիկներ»
Փաթեթային կորուստները 1-5-10 տոկոսը, 30-80-150 մզ, 50-200-400 մզ։
Ցանցի փոխակերպումը (Wi-Fi 354G/5G), bandwidth «ամռանը» սահմանափակումը։
Արգելափակումը 2019/UDP-ն կանխատեսում է TURN-relay մասնաբաժնի աճը, կայունության ստուգումը։
D. CDN/Origin պատահարներ
Մեկ PoP-ի անկումը, պրովայդեր Ա-ի սխալների աճը նպաստեց B-ի վերափոխմանը։- Origin-shield-ի նվազումը բացատրում է origin և rate-limit պաշտպանության ստուգումը։
E. անվտանգություն/հասանելիություն
URURM/MSM-ի մաքրումը, հետաքննության վերանայումը, միգրանտների վերարտադրումը։- Նվագարկչի վարքագիծը key-server անհասանելիության դեպքում (graceful fallback/հաղորդագրություն օգտագործողի)։
6) Ինչպես չափել e2e ուշացումը ճիշտ է
Մենք նկարում ենք իրական timestamp-ի տեսահոլովակը շրջանակի մեջ (ապարատային կամ ծրագրային)։- Սինթետիկ հաճախորդները տարածաշրջաններով հանում են շրջանակային ճանաչումը և համեմատում սերվերային ժամանակի հետ։
- Ինտերակտիվ համար, մենք համեմատում ենք «video _ ts» իրադարձությունները «close bets »/« resions», որպեսզի բացառենք «օպտիկական պատրանքները»։
7) Դիտողությունն այն է, որ միացնել մինչև գործարկումը
RUM-MSK նվագարկչի մեջ 'e2e, startup, stalls, switches, ռոտորի սխալներ։
WebRTC-stats: RTT, loss, jitter, bitrate, nack/pli/fir счётчики, relay-ratio.
CDN-dashbords: cache-hit, TTFB, PoP/ASN սխալներ։
Սերվերային մետրերը ՝ CPU/GPU transcoders, egress SFU/edge, p95 API, բաց գանձերի քանակը։
Ալերտներ 'SLO (e2e, rebuffering, cache-hit, relay-ratio), 4xx/5xx։
8) Ընդունելու չափանիշները (Go-Masterklist)
Որակը
- e2e ուշացում ռուսական պերցենտներում (տե՛ ս SLO)։
- startup no, rebuffering <շեմն, drop-frame <1%։
- Առանց «սև» էկրանների, երբ անցում են կատարվում։
Վստահություն
- Load/stress/soak/burst թեստեր առանց քայքայման։
- Auto-folbek Express RTC-LL-HMS (հեռուստադիտողի համար) աշխատում է թափանցիկ։
- Origin-shield և multi-CDN-ն ինքնաբերաբար անջատվում են։
Համատեղելիություն
- Լավագույն զննարկիչներ/OS/սարքեր, բջջային ցանցեր 'առանց քննադատական ռեգրեսիայի։
- TURN-relay-ը նշված շեմն է, երբ մեծանում է, կայուն աշխատանք է։
Անվտանգություն
- TLS 1. 3, թունավորված URL, MSM/հիմնական սերվերը rate-limit-ից։
- Իրադարձությունների ստորագրություն/webhuks, կարճ TTL, anti-repley։
Դիտարկումը
- Ներառված են RUM և սինթետիկ, dashbords/alerts-ը։
- Runbook-ը համաձայնեցված է և փորձարկվել է։
9) Հաճախակի սխալներ կատարելուց առաջ և ինչպե՞ ս կարող ենք խուսափել դրանցից։
Չափազանց երկար GOP/հազվագյուտ հիմնական կադրերը պաշտպանվում են դանդաղ վերականգնումից հետո։- Ագրեսիվ VBR-ն է անկայուն բիտրեյթ, ձգձգումներ։
- Մեկ CDN-ն առանց shield 'a-ի ավելացնում է origin-ի վրա պիկի ժամանակ։
- Ոչ SVC/սիմուլյաստա No RTC-ում, մենք ամբողջովին ընկնում ենք լողացող քայքայման փոխարեն։
- RUM-ի բացակայությունը ռուսական «կույր» թիմը գործարկման առաջին ժամերի ընթացքում։
10) Փորձարկումների պլանը (www.y-runs)
Առնվազն երկու ընդհանուր փորձեր ՝ ցերեկային (միջին պաշտպանություն) և երեկոյան (պիկ), յուրաքանչյուրը առնվազն 90 րոպե։
Ցանցային փոթորիկների իմիտացիան, մեկ CDN պրովայդերի լուծումը, «թանկ» անջատումը 1080p60։
Տերմինալների/հավաստագրերի փոխակերպումը «կենդանի» է (թեստային կոնտեքստում) - ընթացակարգերի ստուգում։
11) Runbook 2019 (կարճ տարբերակը)
1. Գրանցվել է e2e/rebuffering/TTFB-ի աճը որոշելու տարածքը/RoR։
2. Միացրեք պարամետրերի քայքայումը (նվազեցնել fps/bitrait), ուղարկել keyframe։
3. Անցնել մուլտֆիլմի-CDN routing; Windows RTC-ի խնդիրների դեպքում հանդիսատեսի ֆոլբեքը LL-HMS-ում։
4. Հաղորդակցությունը պլեերում («հոսքի կայունացում է»), միգրանցների տրամաբանությունը։
5. Post-mortefakt, alerts և Alter-ի շեմերի ապդեյթ։
12) Արդյունքը
Սկսելուց առաջ վիդեո հոսքի փորձարկումը այն առարկան է, որը կապում է encoding, medias, CDN և հաճախորդը ընդհանուր մետրի և շարժիչների համակարգով։ Երբ թիմը ունի հստակ SLO, սինթեզիկա և RUM, փորձարկված ֆոլբներ և մուլտֆիլմեր-CDN, իսկ տեսահոլովակի պրոֆիլները տեղադրված են ինքնաթիռի տակ, մեկնարկը կանխատեսելի է 'ցածր ուշացում, կայուն պատկեր և կառավարվող ռիսկեր։ Հենց այդպես է, որ լայնաշերտ ձևաչափը պահպանում է հանդիսատեսի վստահությունը և առաջին իսկ օրվանից դիմանում է պիցցային բեռներին։