Avatar billede rif1900 Nybegynder
09. september 2006 - 01:28 Der er 11 kommentarer og
1 løsning

Undersøg en besøgenes internethastighed

Jeg har været lidt på jagt på google men synes ikke jeg kan finde lige de script jeg har brug for, så håber der måske er nogle der kan hjælpe mig herinde.

Jeg har brug for at kunne foretage en meget hurtig og effektiv hastighedstest af mine besøgende.
Siderne får op imod 50.000 besøgende om dagen og det er derfor utroligt vigtigt at serverload og forsinkelsen for brugeren er så lille som overhovedet mulig.

Er der nogle der kan lave sådan et script eller fortælle mig hvor jeg kan købe det?

Jeg vil meget gerne give 200 point til den person der kan give den bedste løsning :)

Håber at der er nogle herinde der lige ved hvad der skal til
Avatar billede mclemens Nybegynder
09. september 2006 - 17:25 #1
a) Du skal have brugerne til at downloade nogle filer fra din side og så
sende svar tid retur fra pc'en om hvad timestamp er når download er færdig.

b) Du skal minimum have samme upload hastighed som brugeren har download hastighed
- ellers vil du max. kunne måle brugerne til din egen upload hastighed.

c) Jeg har desværre ikke et færdigt script til dig - men en ide kan jeg da kaste.

1. Du har et script på siden der tager timestamp via new Date() i js.
2. Scriptet starter en xmlhttprequest på en stribe filer - en efter en
3. Du indstiller filernes størrelse i scriptet og laver fortløbende timestamp
kontrol via js på det timestamp der blev taget ved start samt hastighedsudregning
når de enkelte filer er blevet fuldt downloadet - og starter så download af filen
igen (f.eks. 1mb - 5 gange i træk ... hvis hastigheden er meget hurtig foretages så
en udvidet test - hvor filerne er på 10 mb stykket (for at have mere præcis måling
på højere hastigheder ...)

[ Siderne får op imod 50.000 besøgende om dagen og det er derfor utroligt vigtigt at serverload og forsinkelsen for brugeren er så lille som overhovedet mulig. ] Hvis du repræsenterer en it udbyder bør det ikke være et problem - men du skal have noget der kan trække det her når vi snakker 50.000 pr. dag - jeg har ikke selv testet lignende ... men det må absolut være noget der trækker resourcer ...

eksempel:

50.000 brugere pr. dag fordelt på 12 timer (ca.)
4.200 (ca.) pr. time ... lad os så tænke os at brugerne
har ca. 1mbit/s forbindelse hver ...

5mbyte * 8bit/byte -> 40mbit -> 40 sekunder pr. download (minimum)
... d.v.s. 1 bruger er på i 40 sekunder så:

3600 sekunder pr. time / 40 sekunder pr. bruger -> 90 brugere upåvirket
af hinanden fordelt på 1 time ... med 4200 brugere pr. time fordelt op i
de 90 brugere upåvirket af hinanden giver det: 47 brugere der er på systemet
samtidig ... d.v.s. kravet er en 47*1mbit -> 47mbit upload forbindelse for at
man kan måle de besøgendes hastighed til minimum 1mbit ... og så kan vi doble op
eller dividere ned afhængig af hvad gennemsnitshastighed vi regner med ...


... Det virkede lidt forvirrende så lad os sige at målingen bruger 5 mbyte pr. bruger
Der er 50.000 brugere pr. dag -> 250.000 mbyte pr. dag divideret med 12 timer og divideret med 3600 sekunder -> 5,78 mbyte pr. sekund -> (8bit pr. byte) 46,24mbit forbindelse for at levere pakkerne ... d.v.s. den skal nok være på min. 2-300mbit forbindelse da fordelingen nok vil være ujævn ... Husk at du kun kan måle hastigheden op til det niveau du har til rådighed ...

... Det var ikke den store hjælp - mere en bekymring, hvis du ikke er teleudbyder eller har et backbone der rykker (men det kan godt tænkes at en måling på 10kb * 5 eller en enkelt 50 kbyte fil er præcis nok - og så falder behovet jo lidt da brugerne ryger hurtigt videre ... men minimum upload er jo den hastighed du skal kunne måle op til - ganget op med antallet af brugere online samtidig ...
Avatar billede mclemens Nybegynder
09. september 2006 - 17:39 #2
Kig evt. også på eksemplet her hvor der måles på
hastigheden direkte istedet for hastigheden via. js:
http://www.webmasterworld.com/forum13/3484.htm

... check evt. det nederste indlæg i denne tråd
http://forum.statcounter.com/vb/archive/index.php/t-13016.html

http://www.phaster.com/golden_hill_free_web/ghfw_connection_speed.shtml
^ her er f.eks. et eksempel hvor man måler på hastigheden ved
at checke hvor hurtigt et billede bliver hentet - ved at definere
størrelsen af billedet, tage timestmap og begynde at loade den når
siden starter ... de eksempler er nok lidt bedre end forsøget på at
lave mere præcise målinger (mere præcise ved størrer filer og flere test) ...
Avatar billede mclemens Nybegynder
09. september 2006 - 17:39 #3
Kaster lige et svar hvis du kan bruge et af de sidste eksempler :o)
Avatar billede mclemens Nybegynder
09. september 2006 - 17:42 #4
Google analytics indeholder vist også noget der kan måle det iflg:
http://forum.statcounter.com/vb/archive/index.php/t-20712.html
Avatar billede mclemens Nybegynder
09. september 2006 - 17:44 #5
Faldt også over denne her ... ved ikke om den er bedre?
http://www.hotscripts.com/Detailed/60197.html
Avatar billede mclemens Nybegynder
09. september 2006 - 17:46 #6
Avatar billede mclemens Nybegynder
09. september 2006 - 17:51 #7
Ikke flere forslag, men hvis jeg selv skulle bruge sådan noget - ville jeg nok gøre som i det nederste link i 09/09-2006 17:39:09 og så nøjes med et ca. tal - og så vælge at integrere det med et billede som skulle loades alligevel ...
Avatar billede mclemens Nybegynder
09. september 2006 - 17:51 #8
(se evt. vis kilde for på siden for inspiration)
Avatar billede mclemens Nybegynder
09. september 2006 - 17:57 #9
Her er lige en quote fra:
http://kundeservice.tdc.dk/privat/internet/faq.php?id=75672

[ TDC Hastighedstest har plads til mange brugere
Et problem med hastighedsteste er, at de er populære. Så populære, at der er rigtig mange, der anvender dem samtidig. Det kan betyde, at selve hastighedstesten bliver en flaskehals.

TDC Hastighedstest kører på en pc med høj kapacitet, og vi har en gigabit-forbindelse direkte ud til TDC's net. Det betyder, at vi har plads til rigtig mange samtidige brugere.

Der kan faktisk være helt op til 100 samtidige brugere med 10 Mbit/s hver. Det lyder måske ikke af mange, men normalt er der ikke mere end 30 samtidige brugere.

Vi overvåger pladsen på testserveren hele døgnet og bliver varslet, hvis vi nærmer os grænsen. I så fald har vi en opgradering stående parat. ]


... Så hvis det skal være præcis og ikke bare et billede - så er det krævende :o)
Avatar billede rif1900 Nybegynder
09. september 2006 - 18:59 #10
hejsa

Jeg har fået en løsning i php i stedet der slet ikke er ligeså krævende. Bruger kun 1 sec på at determinere en cirkahastighed på brugeren hvis han sidder på en bredbåndsforbindelse....
btw. min server er 10mbit og du skal sprede de 50k hits ud over 24 timer...

Dine løsninger er for tidskrævende så jeg kan desværre ikke benytte dem...

jeg tester med 32kb data og rammer derfor ikke helt præcist.

Det var coderdk herinde fra der viste mig en løsning.

Tak for dine forslag ellers.
Avatar billede rif1900 Nybegynder
09. september 2006 - 19:01 #11
jeg har accepteret dit svar for en virkelig ihærdig research on nogle af linkene hjalp mig til at optimere min løsning.
Avatar billede mclemens Nybegynder
09. september 2006 - 19:23 #12
Ok, tak for point :o)

[ og du skal sprede de 50k hits ud over 24 timer... ]
Ah, ok - næsten alle mine egne hits fordeler sig mellem 9 - 21 :o)

[ Dine løsninger er for tidskrævende så jeg kan desværre ikke benytte dem... ]
Ok, jeg synes også selv at de virkede noget krævende :D
(og 100kb data var nok minimum for lidt præcision :/ )
((( http://www.dkif.com/users/clemens/tmp/1/speedtest2.html )))
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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