Välkommen till tv.swedb.se

Hem
Nyheter
Introduktion
TV-tablå
Användningsvillkor
Donationer
Kanaler
Dokumentation
Kontakta oss
Filarkiv XMLTV
Forum
Sök
Länkar

Inloggning





Glömt ditt lösenord?
Inget konto än? Skapa ett

Registrerade användare
15469 registrerade
0 idag
0 denna vecka
1289 denna månad
Senaste: dOOM100

Hem arrow Forum

tv.swedb.se Forum  


<< Första < Föregående 1 2 3 4 5 6 7 Nästa > Sista >>
OS X Widget - 2006-04-19 20:59 Gusax,

Tobias noterade att en hel del av hans bandbredd går åt till din widget. Det verkar som att cachningen inte riktigt fungerar för widgeten.

Jag har precis köpt en Mac Mini så jag tog och installerade widgeten och kollade hur den skickar requests. Det ser ut som att den skickar med

Pragma: no-cache

med alla requests. Jag har inte kunnat kolla den automatiska uppdateringen (jag har bara kört widgeten i några minuter), men om man tar bort en kanal och sen lägger till den igen så gör widgeten requests med Pragma: no-cache och dessutom så skickar den inte med If-modified-since som den ska.

Det känns som att widgeten aktivt försöker undvika cachningen.

Vet du varför den gör så här?

/Mattias
  | | Logga in för att svara.
Sv:OS X Widget - 2006-04-19 21:22 Jag måste erkänna att jag inte har en aning om vad
Pragma: no-cache
eller
If-modified-since
betyder
Upplys mig gärna!

Widgeten har själv ingen större koll på huruvida en xml-fil har uppdaterats eller inte, det sköter curl (trodde jag).
Det widgeten gör är att en gång om dagen (om man tar fram Dashboard varje dag vill säga) försöka ladda ner alla kanalers tablåer för två veckor framåt.
Dvs den startar ett curlanrop per kanal och varje instans av curl försöker ladda ner filen för igår + 14 dagar framåt.

I en tidigare tråd (eller kanske var det via mail) så kunde man via flaggan -z tror jag det var säga åt curl att inte ladda ner serverns fil om datumet på den lokala filen var samma som serverns. Endast om datumen var olika skulle filen laddas ner.

Detta anrop testade vi och jag fick ok (från dig tror jag, genom serverloggarna) att nedladdning endast skedde en gång även om jag anropade servern fler gånger.

Består felet i att alla anrop till servern numer alltid även resulterar i en nedladdning?
Gustav ( http://epgwidget.googlecode.com )
  | | Logga in för att svara.
Sv:OS X Widget - 2006-04-19 21:28 Om du tar bort en kanal raderas även alla tablåfiler så i det fallet *ska* widgeten ladda ner tablån en gång till om du lägger till kanalen igen.

Mitt tidigare inlägg avser den automatiska uppdateringen, den kan du testa genom att klicka till på den översta listen (som det står TV på om du har det blå plastutseendet) och sedan trycka T på tangentbordet.
Då tvingar du widgeten att försöka tanka ner alla tablåer igen. Första gången kommer den tanka ner 12 dagar framåt men låt den vara en stund och tryck sedan T igen. Och igen...

De kommande gångerna ska filerna inte laddas ner på nytt
Gustav ( http://epgwidget.googlecode.com )
  | | Logga in för att svara.
Sv:OS X Widget - 2006-04-19 21:59 Hejsan,

gusax skrev:

Består felet i att alla anrop till servern numer alltid även resulterar i en nedladdning?


Det verkar som något gått sönder för 97% av anropen resulterar i en fullständig nerladdning, det finns exempel på ipnummer om laddat ner samma fil 100 gånger de senaste 14 dagarna.

För xmltv klienten har under samma period 23% av anropen resulterat i att hela filer laddats ner.

En annan liten fundering, hur länge cachas channels.xml filen, vi har gjort en ändring i den för att kunna hantera situationen och den har slagit igenom för xmltv klienterna men inte för widgeten?

Inlägg ändrat av Geijer, den 2006-04-19 21:59
Tobias (http://tvsajten.com)
  | | Logga in för att svara.
Sv:OS X Widget - 2006-04-19 22:39 channels.xml används inte överhuvudtaget än, jag har pga skolan inte haft någon tid till widgeten på länge så jag har inte hunnit med det.

Jag har börjat skriva om widgeten från grunden på de lediga stunder då jag haft både tid och lust till det och då ska jag fixa till channels.xml men i senaste versionen används enbart tvguide. (men man kan växla till tv. manuellt om man vill. Dock vet nog folk inte om att det går.)

Jag kanske är lite dum nu men jag vill vara säker på att jag förstår din statistik:
Att 97% av anropen resulterar i en (1) fullständig nedladdning av en (1) xmlfil per kanal verkar logiskt eftersom man varje dag laddar ner "dag 14" av varje kanal man har i sin lista. Däremot bör de 13 dagarna innan dag 14 inte laddas ner igen. De laddade man ju ner igår.

Menar du att för närvarande så resulterar 97% av anropen för en viss fil i att den filen laddas ner? Dvs det är precis som om man inte hade haft nån cache alls?

Om 14 filer begärs, varav den fjortonde nästan alltid laddas ner (för att man tar fram Dashboard varje dag) så betyder det ju att om allt fungerar normalt så ska 1/14 = 7% av anropen resultera i en nedladdning.
Förutsatt att alla som kör widgeten redan har de tretton filerna från "igår", att ingen av de filerna är ändrade på servern samt givetvis att inga nya användare tillkommer, eller folk lägger till samt tar bort kanaler.

Räknar man med nya användare och folk som inte laddar ner tablåer varje dag osv så kryper procenttalet ju uppåt men jag tycker spontant att 23% låter mycket.

97% behöver ju inte ens kommenteras...
Gustav ( http://epgwidget.googlecode.com )
  | | Logga in för att svara.
Sv:OS X Widget - 2006-04-19 23:03 Detta curlanrop använder jag, dock utan enterslag.
Jag copypejstade från javascriptkoden så är det något syntaxfel så beror det på att jag ersatt variablerna med fel textsträng. Tror dock att det ska funka att köra direkt.

curl
-R
--user-agent tv.swedb.se.widget
--compressed
'http://tvguide.swedb.se/xmltv/svt1.svt.se_{2006-04-19,2006-04-20}.xml.gz '
-o ~/Library/Xmltv/svt1.svt.se_#1.xml
-z ~/Library/Xmltv/svt1.svt.se_#1.xml

Jag provkörde kommandot några gånger så förmodligen finns mitt ip i loggarna kl 23:03 också, utöver den tidigare tiden jag mailade Mattias om.
Gustav ( http://epgwidget.googlecode.com )
  | | Logga in för att svara.
<< Första < Föregående 1 2 3 4 5 6 7 Nästa > Sista >>