Rensa i REST-XML

Allmänna frågor och synpunkter.
Post Reply
KungenAvPeking
3 stars
3 stars
Posts: 181
Joined: Tue 09 Nov 2010, 21:51

Rensa i REST-XML

Post by KungenAvPeking » Sun 23 Jan 2011, 16:02

Sitter och kollar lite på vilken information som skickas till REST-klienterna och blir
lite förvånad... Det är ju MÄNGDER av data som skickas över, behövs verkligen all
denna data till REST-klienten???

Jag kan förstå att det behövs till SwitchKingKlienten, men REST-klienterna har ju
inte samma möjligheter att ändra i inställningarna på servern?

Orsaken att jag reagerar är av den enkla anledningen att man inte alltid har så bra
kontakt på sin mobiltelefon och därför kan det ta en stund för tex Android-klienten
att ladda ner Enheter/Grupper/Datakällor/Kommande händelser, innan man kan
börja styra sina kontakter...

Helt lysande att man kan välja bort enheter nu, det gjorde lite skillnad!
Önskan inför kommande versioner, att kunna välja bort datakällor.
Inte så intressant att visa temperaturen i server rummet, den har jag enbart för att
dra igång en fläkt...

Martin
Administrator
Administrator
Posts: 2655
Joined: Tue 09 Nov 2010, 20:25

Re: Rensa i REST-XML

Post by Martin » Sun 23 Jan 2011, 17:10

Det blir en del data via REST-interfacet. Det mesta behövs men inte allt.
Xml i sig ger ju en del overhead, även om det blir lättläst. Man hade kunnat få det effektivare genom att använda JSON istället men jag upplevde att det ibland blev problem med JSON-tolkning i Android. Därför blev valet i just det fallet att det skulle fungera snarare än att kommunikationen skulle bli lite effektivare... :)

Den totala datamängden blir dock inte så stor, och vanligtvis använder man ju inte Android-klienten speciellt länge - ofta bara för att tända/släcka en enhet. Det är ju också möjligt att begränsa hämtningsfrekvensen.

När man använder Widgets så hämtas bara information för den enhet eller den datakälla som man vill ha information från.

Datakällor kan du faktiskt välja bort. Du kan ange detta per datakälla i klienten.
Martin | Switch King

Martin
Administrator
Administrator
Posts: 2655
Joined: Tue 09 Nov 2010, 20:25

Re: Rensa i REST-XML

Post by Martin » Sun 23 Jan 2011, 17:32

Gjorde en snabb beräkning av datamängderna för enhet. I snitt så tar alla egenskaper för en enhet 0.78kB i storlek. Mina 21 enheter landar på mellan 15-16kB per request.
Martin | Switch King

bunker
3 stars
3 stars
Posts: 130
Joined: Thu 23 Dec 2010, 11:26

Re: Rensa i REST-XML

Post by bunker » Sun 23 Jan 2011, 21:05

Med tanke på att 3G-näten har en roundtrip på ca 300-500 ms så är väl antalet requests och sekvenserna för dessa av otroligt mycket större betydelse än 15-20kb data-trafik.

Med det sagt så tycker jag att det tar en mindre evighet, eller ca 15 sekunder i reella tal, att ladda iphone-gränssnittet. Men jag vet inte om det gränssnittet använder REST?
KungenAvPeking, upplever du nåt liknande i Android?

KungenAvPeking
3 stars
3 stars
Posts: 181
Joined: Tue 09 Nov 2010, 21:51

Re: Rensa i REST-XML

Post by KungenAvPeking » Sun 23 Jan 2011, 21:09

Jo, det går att välja bort i klienten, men det gör väl inte att servern låter bli att skicka data,
det hindrar bara klienten att visa källorna?

Jag håller med om att det inte är mycket med 15-16 kB per request, men med dålig lina, där det
kanske går annan trafik samtidigt, kan det ta sin lilla tid...
Vilket i dagens stressade samhälle kan vara... Frustrerande... ;)

Sen är det biten med att den börjar om, ifall man vrider telefonen...
Du börjar med telefonen upprätt, men inser att det tar en stund, så du sänker telefonen och
den tror att du tiltar den på sidan och börjar om...
Som du skriver, man använder inte klienten speciellt länge och det är inte datamängden jag hakar
upp mig på, utan tiden det tar att föra över datamängden.
Från att jag tar fram telefonen, till jag verkligen kan tända/släcka en lampa - Den tiden är det jag
skulle villja minska, om det går... :wave:

Martin
Administrator
Administrator
Posts: 2655
Joined: Tue 09 Nov 2010, 20:25

Re: Rensa i REST-XML

Post by Martin » Sun 23 Jan 2011, 21:20

Android-gränssnittet och iPhone-gränssnittet går inte att jämföra.
På Android rullar en riktig applikation och på iPhone är det en webbsida som är anpassad för iPhone. En faktor på 10 vid hastighetsjämförelse på Android jämfört med iPhone räcker nog inte - Android är en helt annan upplevelse.
KungenAvPeking wrote:Jo, det går att välja bort i klienten, men det gör väl inte att servern låter bli att skicka data,
det hindrar bara klienten att visa källorna?
Menade Windows-klienten... :)
I Windows-klienten går det att stänga av att en datakälla ska skickas till andra klienter.
KungenAvPeking wrote:Sen är det biten med att den börjar om, ifall man vrider telefonen...
Du börjar med telefonen upprätt, men inser att det tar en stund, så du sänker telefonen och
den tror att du tiltar den på sidan och börjar om...
Detta är störande... Problemet i Android är att när man vänder skärmen så skickar operativet en signal som gör att formuläret får en begäran att bygga om sig på nytt. Det finns ingen möjlighet att se att orsaken är att man vänt på skärmen och det går alltså inte veta om applikationen precis har startat (antingen från "viloläge" eller helt från början). Om det hade varit så så hade man kunnat skippa hämtningen. Alternativet är att låsa klienten i stående läge, men det känns inte riktigt bra.
Det är möjligt att detta kommit i senare versioner av Android men jag vill helst ligga kvar på krav på 1.6 av Android eftersom det fortfarande finns en hel del som kör den versionen.

Ett annat alternativ är att skriva om applikationen så att det blir en tjänst som körs i bakgrunden men det är också en hel del jobb.
...eller skippar man helt "snurran" som indikerar att det hämtas data. Man kanske kan klara sig utan den helt?
KungenAvPeking wrote:Från att jag tar fram telefonen, till jag verkligen kan tända/släcka en lampa - Den tiden är det jag
skulle villja minska, om det går... :wave:
Ett alternativ är ju att lägga de mest använda enheterna som Widgets. Du kan ju använda en 2x1-Widget så får du plats med många på skärmen...
Martin | Switch King

KungenAvPeking
3 stars
3 stars
Posts: 181
Joined: Tue 09 Nov 2010, 21:51

Re: Rensa i REST-XML

Post by KungenAvPeking » Sun 23 Jan 2011, 21:38

Martin wrote: ...eller skippar man helt "snurran" som indikerar att det hämtas data. Man kanske kan klara sig utan den helt?
Låter som en tanke, för som det är just nu, så låser "snurran" telefonen (visst, Home funkar) vilket kan vara
frustrerande, speciellt vid "tilt problemet", där du ju redan har enheter och liknande inladdat...
Jag menar, det kan ju vara så att du har Appen igång, lägger ner telefonen (som tror att den ska byta vy) och
sedan ska göra något nytt, tar upp telefonen (som då byter vy till stående igen)..
bunker wrote:Med det sagt så tycker jag att det tar en mindre evighet, eller ca 15 sekunder i reella tal, att ladda iphone-gränssnittet. Men jag vet inte om det gränssnittet använder REST?
KungenAvPeking, upplever du nåt liknande i Android?
Nä, jag kollade lite på den usla mobila linan jag har här hemma, mellan 7 o 8 sekunder..

Isaksson
5 stars
5 stars
Posts: 637
Joined: Tue 09 Nov 2010, 21:51
Location: Västervik

Re: Rensa i REST-XML

Post by Isaksson » Sun 23 Jan 2011, 22:17

Jag testade lite med en trött HTC Hero tar ca 6-7 sekunder från att jag startar programmet (trycker på switchking) tills att allt är laddat och klart.
Låt oss säga en hämttid på kanske 5 sek.
27 enheter 2 grupper 9 datakällor och 10 coming up.

Jag vet inte om jag kan säga att jag stör mig på den tiden.

Sen använder jag mig av Widgets för de enheterna som jag egentligen använder mobilen för, men det är ju en smaksak.

Post Reply

Who is online

Users browsing this forum: No registered users and 19 guests