Avatar billede lone_a_p Praktikant
25. juni 2011 - 12:45 Der er 14 kommentarer og
1 løsning

Dårlig Performance (men kun for nogle)

Kære eksperter,

Jeg har en udfordring.

Kode:
$performance1 = get_microtime(); //i starten af hvert php-script
$sek = get_microtime()-$performance1; //til slut i hvert php-script

Hvis $sek > 1 så send mig en mail.

Jeg får ganske få mails sendt normalt, men af og til er det som om der er noget, der kører i ring. Nogle gange kan $sek komme op på 15 sek for nogle brugere - problemet er blot, at når jeg så logger på fra min egen pc, så er der intet galt. Jeg kører præcis samme script, men det kører hurtigt her.

Der er dog orden i kaos, for det er som om disse brugere herefter "slæber rundt med" den dårlige performance på alle siderne. Dvs. jeg bliver ved med at få besked om, at samme bruger/session henter siderne langsomt - ved alle sider denne bruger/session henter.

Som jeg skriver virker det som om en bruger pludselig kan slæbe rundt på en kæmpe mængde data eller et eller andet?

Er der nogen der har haft samme problem, eller har en idé til, hvad det kan skyldes?

Mvh Lone
Avatar billede vagnk Juniormester
25. juni 2011 - 12:59 #1
Kære Lone

Jeg har for år tilbage haft noget lignende og fik efterhånden en fornemmelse af at det IE og brugernes eget snavs.

Browseren kan du finde med $_SERVER['HTTP_USER_AGENT'].
Avatar billede vagnk Juniormester
25. juni 2011 - 13:03 #2
Fortsættelse:
Under udvikling kører jeg med Chrome der har en rigtig udmærket JavaScript-konsol, som kan vise tiderne for alle elementerne på siden.
Avatar billede lone_a_p Praktikant
25. juni 2011 - 14:03 #3
Følgende $_SERVER['HTTP_USER_AGENT'] har givet slow scripts:

Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_7; da-dk) AppleWebKit/533.21.1 (KHTML, like Gecko) Version/5.0.5 Safari/533.21.1

Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.0; Trident/5.0)

Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)

Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; 5EFD0D45-2984-0423-74BE-712BEB8A900E; SIMBAR={9C731051-FEEE-4D4F-8B9F-3DB61B9CE972}; BTRS31753; GTB7.0; chromeframe/12.0.742.100; EasyBits GO v1.0; .NET CLR 1.1.4322; HbTools 4.8.4; .NET CLR 2.0.50727; OfficeLiveConnector.1.3; OfficeLivePatch.0.0; MSN Optimized;DK; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; Hotbar 11.0.175.0; MSN Optimized;DK)

Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_7; da-dk) AppleWebKit/533.21.1 (KHTML, like Gecko) Version/5.0.5 Safari/533.21.1

Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.9.0.19) Gecko/2010031422 Firefox/3.0.19 (.NET CLR 3.5.30729)

Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.0; Trident/5.0)


Ud fra ovenstående er det vist ikke specielt IE, der skaber problemer. Der er både mac og firefox i ovenstående.

Andre med ovenstående browsere kører fint.


Angående dit bud på Javascript-konsol med Chrome. Skal jeg ikke selv opleve problemet for at kunne få noget ud af dette?
Avatar billede lone_a_p Praktikant
25. juni 2011 - 14:23 #4
Samt

Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/534.30 (KHTML, like Gecko) Chrome/12.0.742.100 Safari/534.30
Avatar billede vagnk Juniormester
25. juni 2011 - 15:32 #5
Er der nogen der har klaget over tiderne? Kan du eventuelt identificere en af dine sløve brugere?

Hvis man har en hulens masse adware eller pjattede programmer, der skal rode rund på spindet, har man problemer med en masse andre ting, men man oplever det ikke som problemer, fordi man efterhånden har vænnet sig til sløve tider. Der er mange PC-brugere der bare ukritisk henter alt ned der ser interessant ud og så kan man have en masse processer i baggrunden der bar ruller rundt uden at lave noget. Når men efter et par år finder ud af at maskinen er langsom, er det sikkert maskinen der er noget i vejen med og så får man sig bare en ny blærbar. Den slags problemer løses kun ved at have maskinen mellem hænderne.

Den med JavaScript-konsollen kan kun garantere at dine sider er i orden set fra en browsers og internettets synspunkt.
Avatar billede lone_a_p Praktikant
25. juni 2011 - 15:41 #6
Jeg har netop sat et script på, der beder de "langsomme profiler" give mig besked.

De bekræfter problemet.

De oplever langsommeligheden fra første side, de ser.

En enkelt har forsøgt at logge på med en anden ip - der virkede det uden problemer igen.

Det sker heldigvis for en mindre del af brugerne - man alligevel mange nok. (14 inden for den sidste time)

Er der andre variable/settings jeg kan prøve at tjekke?

Jeg synes det lyder meget mærkeligt, at det "hænger ved" de enkelte brugere hele vejen rundt.

Jeg tror ikke det er brugernes browsere ... de klager over problemet som "i dag". Og hvorfor skulle så mange lige pludselig have de samme problem i deres forskellige browsere? Det må være noget andet ... ukendt :(
Avatar billede lone_a_p Praktikant
25. juni 2011 - 15:42 #7
endnu! ukendt ... det bliver det forhåbentlig ikke ved at være.

Jeg hører meget gerne, hvis I har flere forslag til problemet.
Avatar billede lone_a_p Praktikant
25. juni 2011 - 16:20 #8
Hm... alle de langsomme profilers ip'er leder mig til hostudbyder cypercity a/s.

Du havde vist ret i din første betragtning. Jeg må have gravet dybere her.
Avatar billede vagnk Juniormester
25. juni 2011 - 18:00 #9
leder mig til hostudbyder cypercity a/s.
Aha! Held og lykke med den fortsatte efterforskning,
Avatar billede vagnk Juniormester
25. juni 2011 - 18:06 #10
Kommer lige i tanker om at vi osse havde Cybercity her. Det blev ganske vist opkøbt af nogle andre, men smid et link - så kan jeg da se om det virker hos mig.
Avatar billede lone_a_p Praktikant
25. juni 2011 - 19:42 #11
Problem løst! :-)

Følgende kodestump er fjernet:
gethostbyaddr(@getenv("REMOTE_ADDR"))

Det ser faktisk ud til at have ekstrem stor indflydelse på performance generelt også =:-O

Min tidstjekker er nu sat til 0,1 uden alerts :-) Og det er ikke fordi brugerne er forsvundet ;-) Har forsøgt at sætte den lavere ned, og der får jeg alerts.

Det har dog nok kostet nogle brugere tidligere, for jeg tror problemet har været her af og til - har haft denne kodestump i flere år :-/ Det er blot først nu problemet var så fremtrædende, at det var til at finde.

Tak for din hjælp - vil du give et svar, så jeg kan give nogle velfortjente point?

I øvrigt kan du heldigvis ikke teste med Cypercity/Telenor længere ;-) Så skal du selv prøve med ovenstående, hehe
Avatar billede lone_a_p Praktikant
25. juni 2011 - 19:57 #12
Det er åbenbart fordi, at cypercity/telenor ikke giver noget svar i ovenstående kode-kald.

Den har nok bare stået og blevet ved og ved og ved med at forsøge at få respons?
Avatar billede vagnk Juniormester
25. juni 2011 - 21:23 #13
Du fortjener selv de point.
Vagn
Avatar billede lone_a_p Praktikant
14. august 2011 - 10:45 #14
Ok, men tak for din respons, som ledte mig på sporet :)
Avatar billede it-elev Nybegynder
24. september 2011 - 20:06 #15
Hej spændende tråd, fik du identificeret flaske halsen?



Hvis du ønsker at teste fra klientens perspektiv så download denne her fra  Compuware. Den er gratis, men kan også kun fejlsøge fra klient og kun fra IE og FF, ikke safari, crome opera ect:

http://ajax.dynatrace.com/ajax/en/download/download.aspx

Hvis det er en kommerciel side og du vil investerer i fejlsøgningen levere Compware cross- browsertesting, performance som SaaS

Hvis du ønsker at vide mere om performance og availibilty testing og monitorering så hjælper jeg gerne.
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