Page Load Time

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

Page Load Time

Runar Jordahl
Below are the results for load time of Google’s home page and my
simple “Hello World” application:

Google home page
10 requests  ❘  20.01KB transferred  ❘  371ms (onload: 314ms,
DOMContentLoaded: 123ms)

Seaside “Hello World” application
2 requests  ❘  4.86KB transferred  ❘  1.03s (onload: 1.05s,
DOMContentLoaded: 1.05s)

I used Google Chrome to measure the results.

My “Hello World” application simply displays “Hello World” as H1,
nothing more. I use the default Seaside setup, with a the browser
running locally.

I run Pharo 1.2.1 and Seaside 3.0.3.1 on a powerful (8 GB Ram, SSD
disk, Intel i5 661 CPU) Windows 7 64 bit box.

Google’s page is minimalistic; a typical page uses a few seconds to
load. Still, wouldn’t you expect the minimum load time to be far less
than 1 second?

I perfectly well understand that minimum load time does not say
anything about the load time for a more complex page.

Kind regards
Runar
_______________________________________________
seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: Page Load Time

Sven Van Caekenberghe
Runar,

On 14 May 2011, at 00:01, Runar Jordahl wrote:

> I run Pharo 1.2.1 and Seaside 3.0.3.1 on a powerful (8 GB Ram, SSD
> disk, Intel i5 661 CPU) Windows 7 64 bit box.
>
> Google’s page is minimalistic; a typical page uses a few seconds to
> load. Still, wouldn’t you expect the minimum load time to be far less
> than 1 second?
>
> I perfectly well understand that minimum load time does not say
> anything about the load time for a more complex page.

You are entering a complex terrain: web app benchmarking.
But I understand your angle: you are trying to establish whether Seaside is not too slow.
I once asked similar questions, but you have to explore on your own.
Optimizing a web app, especially Seaside, is not that easy.
Seaside is stateful, hard to cache and uses redirects a lot,
but it can be done.

But rest assured, Smalltalk is not slow. For the following pages:

        http://zn.stfx.eu

Google Chrome reports:

        2 requests  ❘  5.18KB transferred  ❘  53ms (onload: 58ms, DOMContentLoaded: 143ms)

You can read more about the setup here

        http://zn.stfx.eu/zn/index.html#livedemo

And this is on minimal hardware.

HTH,

Sven



_______________________________________________
seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

RE: Page Load Time

Boris Popov, DeepCove Labs (SNN)
In reply to this post by Runar Jordahl
Out of curiosity,  could you be running into a common problem with DNS lookups and IPv6? Try using the IP address or disabling IPv6.

http://www.mail-archive.com/pharo-project@.../msg30006.html
http://www.fritscher.ch/blog/2008/02/10/slowness-with-localhost-on-vista-and-seasidesqueak-in-firefox/
http://weblogs.asp.net/dwahlin/archive/2007/06/17/fixing-firefox-slowness-with-localhost-on-vista.aspx

-Boris

-----Original Message-----
From: [hidden email] [mailto:[hidden email]] On Behalf Of Runar Jordahl
Sent: 13 May 2011 18:02
To: Seaside - general discussion
Subject: [Seaside] Page Load Time

Below are the results for load time of Google’s home page and my simple “Hello World” application:

Google home page
10 requests  ❘  20.01KB transferred  ❘  371ms (onload: 314ms,
DOMContentLoaded: 123ms)

Seaside “Hello World” application
2 requests  ❘  4.86KB transferred  ❘  1.03s (onload: 1.05s,
DOMContentLoaded: 1.05s)

I used Google Chrome to measure the results.

My “Hello World” application simply displays “Hello World” as H1, nothing more. I use the default Seaside setup, with a the browser running locally.

I run Pharo 1.2.1 and Seaside 3.0.3.1 on a powerful (8 GB Ram, SSD disk, Intel i5 661 CPU) Windows 7 64 bit box.

Google’s page is minimalistic; a typical page uses a few seconds to load. Still, wouldn’t you expect the minimum load time to be far less than 1 second?

I perfectly well understand that minimum load time does not say anything about the load time for a more complex page.

Kind regards
Runar
_______________________________________________
seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside

_______________________________________________
seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

RE: Page Load Time

Boris Popov, DeepCove Labs (SNN)

Here's what I get in clean VisualWorks 7.7.1 with Seaside-All 3.0-3 from Public Repository,

 

14:03:30.440000 - 14:03:30.409000 = 31ms

 

C:\Users\Boris>curl --trace-time -v http://127.0.0.1:7777/status

14:03:30.409000 * About to connect() to 127.0.0.1 port 7777 (#0)

14:03:30.409000 *   Trying 127.0.0.1... connected

14:03:30.409000 * Connected to 127.0.0.1 (127.0.0.1) port 7777 (#0)

14:03:30.425000 > GET /status HTTP/1.1

14:03:30.425000 > User-Agent: curl/7.19.7 (i386-pc-win32) libcurl/7.19.7 OpenSSL

/0.9.8l zlib/1.2.3

14:03:30.425000 > Host: 127.0.0.1:7777

14:03:30.425000 > Accept: */*

14:03:30.425000 >

14:03:30.425000 < HTTP/1.1 200 OK

14:03:30.425000 < Content-type: text/html;charset=utf-8

14:03:30.425000 < Content-length: 3203

14:03:30.425000 <

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/x

html1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang

="en" lang="en"><head><title>Garbage Collector</title><meta http-equiv="Content-

Type" content="text/html;charset=utf-8"/><meta http-equiv="Content-Script-Type"

content="text/javascript"/><link rel="stylesheet" type="text/css" href="/files/W

ANavigationFiles/main.css"/><link rel="stylesheet" type="text/css" href="/files/

WADevelopmentFiles/development.css"/></head><body onload="onLoad()"><div class="

kalsey"><div class="navigation-options"><ul><li class="option-selected"><a href=

"/status/WAGarbageCollectorStatus?_s=cV1LTzNi8RJs1_sD&amp;_k=PlEz-Mj0E-LexYrQ&am

p;1">GC</a></li><li><a href="/status/WAGarbageCollectorStatus?_s=cV1LTzNi8RJs1_s

D&amp;_k=PlEz-Mj0E-LexYrQ&amp;2">Memory</a></li><li><a href="/status/WAGarbageCo

llectorStatus?_s=cV1LTzNi8RJs1_sD&amp;_k=PlEz-Mj0E-LexYrQ&amp;3">OS</a></li><li>

<a href="/status/WAGarbageCollectorStatus?_s=cV1LTzNi8RJs1_sD&amp;_k=PlEz-Mj0E-L

exYrQ&amp;4">Processes</a></li><li><a href="/status/WAGarbageCollectorStatus?_s=

cV1LTzNi8RJs1_sD&amp;_k=PlEz-Mj0E-LexYrQ&amp;5">Smalltalk Image</a></li></ul></d

iv><div class="navigation-content"><table><tbody class="right"><tr><th>Global GC

s:</th><td>3</td></tr><tr><th>Incremental GCs:</th><td>16</td></tr><tr><th>Compa

cting GCs:</th><td>0</td></tr><tr><th>Scavenges:</th><td>2121</td></tr></tbody><

/table><h2>Actions</h2><ul><li><a title="Reclaims recently created garbage (whic

h is usually most of it) fairly quickly." href="/status/WAGarbageCollectorStatus

?_s=cV1LTzNi8RJs1_sD&amp;_k=PlEz-Mj0E-LexYrQ&amp;6">Quick GC</a></li><li><a titl

e="Reclaims all garbage." href="/status/WAGarbageCollectorStatus?_s=cV1LTzNi8RJs

1_sD&amp;_k=PlEz-Mj0E-LexYrQ&amp;7">Full GC</a></li><li><a title="Perform a comp

acting, mark-sweep garbage collection of the entire Smalltalk system (with the e

xception of those objects housed in PermSpace), eliminating any unreferencable o

bjects. Compacts both the OT and object data. May take some time even on fast ma

chines." href="/status/WAGarbageCollectorStatus?_s=cV1LTzNi8RJs1_sD&amp;_k=PlEz-

Mj0E-LexYrQ&amp;8">Compacting GC</a></li><li><a title="Compacts the data in OldS

pace, but not the OT. May take some time even on fast machines." href="/status/W

AGarbageCollectorStatus?_s=cV1LTzNi8RJs1_sD&amp;_k=PlEz-Mj0E-LexYrQ&amp;9">Compa

ct memory</a></li></ul></div></div><div class="wa-toolbar"><a class="wa-newsessi

ontoolplugin" href="/status/WAGarbageCollectorStatus?_s=cV1LTzNi8RJs1_sD&amp;_k=

PlEz-Mj0E-LexYrQ&amp;10">New Session</a> <a class="wa-configuretoolplugin" href=

"/status/WAGarbageCollectorStatus?_s=cV1LTzNi8RJs1_sD&amp;_k=PlEz-Mj0E-LexYrQ&am

p;11">Configure</a> <a class="wa-togglehalostoolplugin" href="/status/WAGarbageC

ollectorStatus?_s=cV1LTzNi8RJs1_sD&amp;_k=PlEz-Mj0E-LexYrQ&amp;12">Halos</a> <a

class="wa-validatetoolplugin" title="Validate XHTML" href="http://validator.w3.o

rg/check/referer">XHTML</a> <span class="wa-timingtoolplugin"><span title="Callb

ack Time">0</span>/<span title="Render Time">0</span> ms</span></div><script typ

e="text/javascript">/*<![CDATA[*/function onLoad(){};/*]]>*/</script></body></ht

ml>14:03:30.425000 * Connection #0 to host 127.0.0.1 left intact

14:03:30.440000 * Closing connection #0

 

C:\Users\Boris>curl --trace-time -v http://localhost:7777/status

14:05:02.653000 * About to connect() to localhost port 7777 (#0)

14:05:02.653000 *   Trying 127.0.0.1... connected

14:05:02.653000 * Connected to localhost (127.0.0.1) port 7777 (#0)

14:05:02.653000 > GET /status HTTP/1.1

14:05:02.653000 > User-Agent: curl/7.19.7 (i386-pc-win32) libcurl/7.19.7 OpenSSL

/0.9.8l zlib/1.2.3

14:05:02.653000 > Host: localhost:7777

14:05:02.653000 > Accept: */*

14:05:02.653000 >

14:05:02.668000 < HTTP/1.1 200 OK

14:05:02.668000 < Content-type: text/html;charset=utf-8

14:05:02.668000 < Content-length: 3203

14:05:02.668000 <

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/x

html1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang

="en" lang="en"><head><title>Garbage Collector</title><meta http-equiv="Content-

Type" content="text/html;charset=utf-8"/><meta http-equiv="Content-Script-Type"

content="text/javascript"/><link rel="stylesheet" type="text/css" href="/files/W

ANavigationFiles/main.css"/><link rel="stylesheet" type="text/css" href="/files/

WADevelopmentFiles/development.css"/></head><body onload="onLoad()"><div class="

kalsey"><div class="navigation-options"><ul><li class="option-selected"><a href=

"/status/WAGarbageCollectorStatus?_s=BKkWCimi7nM1H77M&amp;_k=IZGF7xux7PciXJoA&am

p;1">GC</a></li><li><a href="/status/WAGarbageCollectorStatus?_s=BKkWCimi7nM1H77

M&amp;_k=IZGF7xux7PciXJoA&amp;2">Memory</a></li><li><a href="/status/WAGarbageCo

llectorStatus?_s=BKkWCimi7nM1H77M&amp;_k=IZGF7xux7PciXJoA&amp;3">OS</a></li><li>

<a href="/status/WAGarbageCollectorStatus?_s=BKkWCimi7nM1H77M&amp;_k=IZGF7xux7Pc

iXJoA&amp;4">Processes</a></li><li><a href="/status/WAGarbageCollectorStatus?_s=

BKkWCimi7nM1H77M&amp;_k=IZGF7xux7PciXJoA&amp;5">Smalltalk Image</a></li></ul></d

iv><div class="navigation-content"><table><tbody class="right"><tr><th>Global GC

s:</th><td>3</td></tr><tr><th>Incremental GCs:</th><td>16</td></tr><tr><th>Compa

cting GCs:</th><td>0</td></tr><tr><th>Scavenges:</th><td>2121</td></tr></tbody><

/table><h2>Actions</h2><ul><li><a title="Reclaims recently created garbage (whic

h is usually most of it) fairly quickly." href="/status/WAGarbageCollectorStatus

?_s=BKkWCimi7nM1H77M&amp;_k=IZGF7xux7PciXJoA&amp;6">Quick GC</a></li><li><a titl

e="Reclaims all garbage." href="/status/WAGarbageCollectorStatus?_s=BKkWCimi7nM1

H77M&amp;_k=IZGF7xux7PciXJoA&amp;7">Full GC</a></li><li><a title="Perform a comp

acting, mark-sweep garbage collection of the entire Smalltalk system (with the e

xception of those objects housed in PermSpace), eliminating any unreferencable o

bjects. Compacts both the OT and object data. May take some time even on fast ma

chines." href="/status/WAGarbageCollectorStatus?_s=BKkWCimi7nM1H77M&amp;_k=IZGF7

xux7PciXJoA&amp;8">Compacting GC</a></li><li><a title="Compacts the data in OldS

pace, but not the OT. May take some time even on fast machines." href="/status/W

AGarbageCollectorStatus?_s=BKkWCimi7nM1H77M&amp;_k=IZGF7xux7PciXJoA&amp;9">Compa

ct memory</a></li></ul></div></div><div class="wa-toolbar"><a class="wa-newsessi

ontoolplugin" href="/status/WAGarbageCollectorStatus?_s=BKkWCimi7nM1H77M&amp;_k=

IZGF7xux7PciXJoA&amp;10">New Session</a> <a class="wa-configuretoolplugin" href=

"/status/WAGarbageCollectorStatus?_s=BKkWCimi7nM1H77M&amp;_k=IZGF7xux7PciXJoA&am

p;11">Configure</a> <a class="wa-togglehalostoolplugin" href="/status/WAGarbageC

ollectorStatus?_s=BKkWCimi7nM1H77M&amp;_k=IZGF7xux7PciXJoA&amp;12">Halos</a> <a

class="wa-validatetoolplugin" title="Validate XHTML" href="http://validator.w3.o

rg/check/referer">XHTML</a> <span class="wa-timingtoolplugin"><span title="Callb

ack Time">0</span>/<span title="Render Time">0</span> ms</span></div><script typ

e="text/javascript">/*<![CDATA[*/function onLoad(){};/*]]>*/</script></body></ht

ml>14:05:02.668000 * Connection #0 to host localhost left intact

14:05:02.684000 * Closing connection #0

 

-Boris

 

-----Original Message-----
From: [hidden email] [mailto:[hidden email]] On Behalf Of Boris Popov, DeepCove Labs
Sent: 13 May 2011 22:13
To: Seaside - general discussion
Subject: RE: [Seaside] Page Load Time

 

Out of curiosity,  could you be running into a common problem with DNS lookups and IPv6? Try using the IP address or disabling IPv6.

 

http://www.mail-archive.com/pharo-project@.../msg30006.html

http://www.fritscher.ch/blog/2008/02/10/slowness-with-localhost-on-vista-and-seasidesqueak-in-firefox/

http://weblogs.asp.net/dwahlin/archive/2007/06/17/fixing-firefox-slowness-with-localhost-on-vista.aspx

 

-Boris

 

-----Original Message-----

From: [hidden email] [mailto:[hidden email]] On Behalf Of Runar Jordahl

Sent: 13 May 2011 18:02

To: Seaside - general discussion

Subject: [Seaside] Page Load Time

 

Below are the results for load time of Google’s home page and my simple “Hello World” application:

 

Google home page

10 requests    20.01KB transferred    371ms (onload: 314ms,

DOMContentLoaded: 123ms)

 

Seaside “Hello World” application

2 requests    4.86KB transferred    1.03s (onload: 1.05s,

DOMContentLoaded: 1.05s)

 

I used Google Chrome to measure the results.

 

My “Hello World” application simply displays “Hello World” as H1, nothing more. I use the default Seaside setup, with a the browser running locally.

 

I run Pharo 1.2.1 and Seaside 3.0.3.1 on a powerful (8 GB Ram, SSD disk, Intel i5 661 CPU) Windows 7 64 bit box.

 

Google’s page is minimalistic; a typical page uses a few seconds to load. Still, wouldn’t you expect the minimum load time to be far less than 1 second?

 

I perfectly well understand that minimum load time does not say anything about the load time for a more complex page.

 

Kind regards

Runar

_______________________________________________

seaside mailing list

[hidden email]

http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside


_______________________________________________
seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: Page Load Time

Runar Jordahl
In reply to this post by Sven Van Caekenberghe
That looks good. I just feared that Seaside, whatever setup you use,
would use around 1 second to complete any request. Your site shows
that this is not the case. Thanks!

Runar
_______________________________________________
seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

RE: Page Load Time

Boris Popov, DeepCove Labs (SNN)
Runar,

Have no fear, it's quick enough for most things. Here are network profiles of our application's login screen, which should be a tad more representative (and this is without combining scripts and stylesheets into single files etcetera),

Empty cache,

32 requests  ❘  582.25KB transferred  ❘  389ms (onload: 390ms, DOMContentLoaded: 351ms)

Populated cache,

33 requests  ❘  5.70KB transferred  ❘  107ms (onload: 113ms, DOMContentLoaded: 113ms)

Regards,

-Boris

-----Original Message-----
From: [hidden email] [mailto:[hidden email]] On Behalf Of Runar Jordahl
Sent: 14 May 2011 06:28
To: Seaside - general discussion
Subject: Re: [Seaside] Page Load Time

That looks good. I just feared that Seaside, whatever setup you use, would use around 1 second to complete any request. Your site shows that this is not the case. Thanks!

Runar
_______________________________________________
seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside

_______________________________________________
seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside

cached.png (335K) Download Attachment
fresh.png (372K) Download Attachment