Avatar billede ditlev Juniormester
04. maj 2003 - 18:59 Der er 10 kommentarer og
1 løsning

Størrelse af data loaded fra DB

Min interesse er at lave en film der fylder ekstremt lidt.
Jeg har store data-mængder lagret i arrays, og det fylder faktisk ikke så meget. Hvis jeg lægger data ud i en txt-fil fylder den en del mere, hvorfor jeg har opgivet det.
Jeg vil med fordel kunne lægge mine data i en access database, men så kommer spørgsmålet:
Bliver trafikken på mit site større hvis jeg lægger data ud i en database, og derfra henter dem ind i Flash, fremfor at definere arrays direkte i Flash?

/Ditlev
Avatar billede barklund Nybegynder
04. maj 2003 - 19:11 #1
Ja, det vil jeg tro. Det er ikke meget og du kan betydeligt bedre informere brugeren om load status. Og ligeledes kan du helt slippe for at loade tekster, som brugeren ikke kigger efter.

Det smarteste er, kun at loade de tekster, der skal bruges på netop det brugeren er ved at se nu.

Min din server får en lidt større belastning, da der vil komme flere små forespørgsler, hvis det er det, som dit spørgsmål drejer sig om...

/Barklund
Avatar billede ditlev Juniormester
04. maj 2003 - 19:27 #2
Det er netop server-belastningen det drejer sig om. Mit site blev lukket p.g.a. belastning på 8 gigabytes dagligt, fordelt på 17.000 brugere. Alle bytes tæller derfor.
Spørgsmålet kan omdefineres til: fylder 10 kbytes array i en swf fil det samme som hvis det blev loaded ind fra DB på én gang. Hvis ikke, er der et bud på størrelsen af forskellen?
Avatar billede barklund Nybegynder
04. maj 2003 - 20:28 #3
Flash komprimerer sine data, tekst bliver loaded råt. Jeg tror ikke, at du vinder bytes - tværtimod.
Avatar billede _just4fun_ Nybegynder
05. maj 2003 - 09:10 #4
Nu ved jeg jo ikke om du har gjort det, men i flash 6 kan du komprimere .swf. Så hvis du har en .swf med et stort dataarray i og du ikke sætter flash til at komprimere det, så fulder det selve teksten + de byets flash bruger til at håndtere arrayene. Men hvis du lader flash komprimere .swf'en, så får du typisk en faktor 3-8 stykker!

En anden ting du kan gøre er at enable HTTP-compresstion på serveren, men så er det ligepludselig ikke et FLASH-issue mere.... dumper dog en link til princippet her:
http://www.microsoft.com/technet/treeview/default.asp?url=/technet/prodtechnol/iis/maintain/featusability/httpcomp.asp
(man kan også selv kode det i asp hvis ikke kan få udbyderen til at gøre det)
Avatar billede barklund Nybegynder
05. maj 2003 - 12:05 #5
Så vidt jeg ved, så er der primært vektor-grafik, som flash mx komprimerer. Og selv uden komprimering ligger data ikke "råt" i filen - skulle jeg mene :)
Avatar billede _just4fun_ Nybegynder
05. maj 2003 - 12:31 #6
.swf-formatet har en indbygget komprimering til vektorgrafik, ja. Men tekst-data som f.eks. overskrifter osv. der bliver gemt i variabler. er (i flash6) almindelig unicode, som fylder det samme som almindelig tekst.
Som sagt har flash 6 også en checkbox hvor man kan vælge at eksporte sin .swf komprimeret. Det den gør er at tage ALT (fortset fra de første bytes) og komprimerer det med den samme algoritme der bliver brugt i f.eks. pkzip og gzip osv. På den måde får man også komprimeret tekst, og ikke kun vektorer.
Avatar billede barklund Nybegynder
05. maj 2003 - 20:42 #7
Jeg må indrømme, at jeg ikke følger med på OpenSWF.com, hvor sådanne fakta er indforståede, så jeg vidste faktisk ikke helt, hvordan MX komprimerede... :)

Men tak for oplysningerne....
Avatar billede ditlev Juniormester
06. maj 2003 - 00:22 #8
Min swf er komprimeret, og fylder egentligt ikke så meget - kun 25 kbytes.
Arrayes fylder ca. 10 kbytes af de 25. Det har kostet mig sved og tårer at koge programmet ned til 25 kbytes, og derfor er jeg meget interesseret i, om I har viden om forskellen, hvis jeg loader array's fra databasen. Programmet skulle jo nødigt ende op med at fylde det dobbelte!
Swf kan ses på www.iqtest.dk
Avatar billede barklund Nybegynder
06. maj 2003 - 01:19 #9
Hvis du har en del grafik i de øvrige 15 kb, så kan du måske fyre det igennem en yderligere optimizer som Optimaze eller tilsvarende.

Ellers kan du sikkert nok komprimere data fra en server via en eller anden algoritme, og så dekomprimere i flash. Men det er noget rod, da flash er sløv til sådanne beregninger. Så jeg har faktisk ikke rigtig noget bud, for jeg tror ikke, at det vil hjælpe bare at loade det normalt fra server. Det fylder garanteret mere end at gemme det i filen.
Avatar billede _just4fun_ Nybegynder
06. maj 2003 - 08:50 #10
Et skud i tågen:
Det ser ud til at du bruger HTML til bogstaver og tekst.... noget ala:
"<P ALIGN="LEFT"><FONT FACE="_serif" SIZE="29" COLOR="#FFFFFF"><B>E</B></FONT></P>", som fylder lidt over 100 bytes.
Den og noget andet formateringsHTML har du en masse af.... hvis du nøjest med at gemme "E", og så dynamisk sætter teksten sammen, så har du ihvertfald genbrugt teksten "<P ALIGN="LEFT"><FONT FACE="_serif" SIZE="29" COLOR="#FFFFFF"><B></B></FONT></P>" (ca. 70gg) , og det må da give nogle K.

mht. HTTP compression, vil det ikke hjælpe det store på denne .swf da den allerede er komprimeret.
Avatar billede ditlev Juniormester
12. maj 2003 - 14:59 #11
Jeg søgte information om størrelsen af loaded data fra en database, men har egentlig ikke fået et svar på dette. Jeg er klar over, den samlede belastning vel bliver lidt større, men hvor meget er åbenbart ikke nemt at svare på.
Tak til de herrer for deres gode råd ang. ovenstående.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester