Antag, at en bruger gemmer en dokumentar i mediebiblioteket. En måned senere findes titel, omslag og beskrivelse stadig, men afspilningen starter ikke. For brugeren virker indholdet ikke. For udvikleren kan katalogposten være helt i orden: filkilden er offline.
Fejlen viser tre forskellige spørgsmål: kan indholdet findes, er de modtagne data korrekte, og kan de hentes nu? Én samlet ”udgivet”-status gør grænsefladen mere optimistisk end systemets faktiske kunnen.
Indekset beskriver indhold; filer kræver egne kilder
Titler, forfattere, kanaler, tags og versionsrelationer udgør kataloget. GUNs offentlige dokumentation beskriver grafdata og tilstandssynkronisering mellem modparter i realtid. Sådanne værktøjer hjælper programmer med at organisere og synkronisere relationer. GUNs projektbeskrivelse
Fillevering rejser andre spørgsmål: hvem har en fuld kopi, hvilke noder er online, kan forbindelser etableres, og kan manglende dele hentes? En bevaret katalogpost opfylder ikke automatisk disse betingelser.
Vis katalogstatus og hentestatus separat. Brugeren kan først gemme posten, men siden bør fortælle, om tilgængeligheden er kontrolleret for nylig. ”Senest hentet” og ”en kilde er tilgængelig nu” skal formuleres forskelligt, så historiske resultater ikke bliver løfter i realtid.
Skellet hjælper også fejlfinding. Synkroniseres kataloget, men filen er utilgængelig, så undersøg først lagring og transport. Ankommer filen, men den forkerte version vises, så kontrollér koblingen mellem posten og indholdsidentifikatoren. Problemerne kræver forskellige løsninger.
Indholdsadresser løser identifikationsproblemet
IPFS identificerer indhold med CID’er. En CID indeholder oplysninger om blandt andet hashing og kodning og er ikke blot en almindelig SHA-256-streng for en vilkårlig fil. Datas organisering kan også påvirke identifikatoren. IPFS om indholdsadressering
I et mediekatalog er det nyttigt at knytte visningsinformation tydeligt til en bestemt filversion. En ændret beskrivelse kræver måske kun en katalogændring. Ved ny videoredigering bør forholdet mellem gammel og ny version bevares, så bogmærker, kommentarer og kontroloplysninger vedrører det rette indhold.
En vellykket kontrol øger tilliden til dataintegriteten, men fastslår ikke alene forfatteren, licensens gyldighed eller indholdets egnethed. Gør ikke én kontrol til et universelt ”betroet”-mærke. Vis beviser for det konkrete udsagn.
Varighed kræver løbende lagringsaftaler
IPFS-dokumentationen adskiller indholdsadressering og varig lagring og beskriver blandt andet pinning. Selv en node med indholdet skal have passende oppetid og vedligeholdelse for fortsat adgang. IPFS om varighed
Udgivelse bør derfor omfatte en faktisk bevaringsplan: hvem vedligeholder fulde kopier, hvor længe, hvem overtager efter en tjenestes udløb, og hvordan overdrages ansvaret, når en vedligeholder forlader projektet? En vellykket upload besvarer ikke spørgsmålene måneder senere.
Kontrollér som minimum kopiernes fælles afhængigheder. To adresser kan pege på samme konto, enhed eller udbyder. Flere registrerede kilder betyder ikke automatisk, at de øvrige virker, når én fejler.
For sjældent efterspurgt indhold kan bevaring og caching af populært materiale have separate budgetter. Cache følger efterspørgslen; varig bevaring kræver en ansvarlig. ”Ingen ser nu” er ikke ensbetydende med ”ikke længere værd at gemme”.
Tilgængelighedskontrol skal hente rigtige data
Denne arbejdsgang er et udgangspunkt. Tilpas hyppigheden til indholdsmængde og servicemål:
- Læs filversion, indholdsidentifikator og mulige kilder fra kataloget.
- Opret forbindelse, og hent faktiske data frem for kun at kontrollere katalog-API’ets succesmelding.
- Verificér data efter protokollen. Stikprøver beviser kun de undersøgte dele, ikke hele filen.
- Registrér tidspunkt, fungerende kilde, fejlårsag og kontrolomfang.
- Tilføj kopier, eller vis en tydelig status, når kilderne mindskes eller fejl fortsætter.
Giv kontrollerne deres eget trafikbudget. Fuld download af en stor samling på én gang kan gøre kontrolsystemet til hovedbelastningen. Fordel lette sonderinger, afspilningskontroller og periodisk fuld gendannelse på niveauer med klare beskrivelser af, hvad de beviser.
Timeout, manglende tilladelse, tilbagetrukket indhold og verifikationsfejl bør ikke alle kaldes ”manglende fil”. Forskellene afgør, om man skal prøve igen, søge adgang, reparere kopien eller respektere tilbagetrækningen.
Vis brugeren et muligt næste skridt
En uendelig indlæsningsindikator giver næsten ingen handlingsrettet information. Forklar hellere, om systemet søger kilder, forbinder, møder midlertidig utilgængelighed eller afviser data, som ikke bestod kontrollen.
Hvis afspilningen ikke kan starte, bør brugeren vide, om et nyt forsøg hjælper, om en anden kilde findes, og om bogmærket kan beholdes. En fejlrapport kan medtage identifikator og fejlkategori i diagnostikken uden at kræve en gentagelse af alle brugerens trin.
AlphaBizs offentlige arkitektur nævner både GUN og WebTorrent. Derfor er skellet mellem katalogdata og medietransport relevant. Metoderne her er muligheder til vurdering, ikke udsagn om en allerede implementeret overvågnings- eller kopieringsstrategi. AlphaBizs projektbeskrivelse
Start med en gendannelsesøvelse for ét indhold: gør originalkilden utilgængelig, og forsøg at genoprette adgang via katalog og kopier. Det siger mere end en flot post, som altid findes. Del designet og kontrollens omfang i AlphaBiz Discussions.