Hi,

I'm working on a social-network style web application for a client
which we hope to launch soon. The application is built on symfony 1.0.

As part of the preparation for launch, I've conducted some load
testing using JMeter (it's the first time I've used it).

To run the test, I created a sample database containing 1000 users
with randomly assigned data, and a JMeter script which carried out
some of the main types of user actions in the system.

I've got some initial performance results which I found quite
disappointing, and I'm wondering if any other symfony users and
developers can give me some tips about where to investigate the
problem, and what I might reasonably expect.

I've put a summary of the results into this google spreadsheet (easier
to format there than in an email):

http://spreadsheets.google.com/pub?key=pkUvdGZhaUxotSc1bHtGFLg

Notes:
1. hardware 2.3GHz AMD Athlon X2 Dual core. 4GB Ram. Database and
webserver running on same machine.
2. software - Mysql 5.0.32, php 5.2.0 (etch), APC 3.0.19. Symfony
1.0.11. Propel 1.2.1.
3. measurements generated using JMeter running on web server, so may
distort results slightly
4. Page fetches include embedded resources (images,js etc) and any
redirection and resulting pages, so for example "do login" takes a
long time because the page seen after login is quite complex.
5. There's a random delay between page fetches with mean 0.7seconds
and std dev 0.4s.

The main concern is that there are some pages taking of the order of 4
or 9 seconds to load, even under a 4 user scenario.

The "Submit ack receipt form" and "Confirm wrapper printing" actually
redirect to the "view My collection page", so will include the
processing time of the in the measurement. However, these actions
themselves don't do that much (modify some database records and send
one or two emails).

The "View my collection page" is quite a complex page, with both
complex templating and one or two quite complex database queries.
Using the profiling option of the developer toolbar for this page I
get:

type    calls   time (ms)
Configuration   25      8.18
Action "collection/index"       0       573.71
Action "collection/list"        1       132.75
Database        101     30.53
View "Success" for "collection/list"    1       371.36
Partial "collection/_diskTable" 1       144.04
Partial "collection/_add_disk_search_form"      2       6.34
Partial "global/_searchParentalRestrictionWarning"      2       0.76
Partial "rating/_your_rating"   7       15.87
Partial "global/_breadcrumbs"   1       0.34
Component "request/actionItems" 1       2.77
Partial "request/_actionItems"  1       0.40
Partial "global/_tabnav"        1       16.70
Component "network/friendsDisks"        1       4.77
Partial "network/_friendsDisks" 1       79.86
Partial "network/_diskList"     1       77.44
Partial "rating/_rating"        5       32.33
Component "tip/randomTip"       1       1.54
Partial "global/_footer"        1       6.00
Partial "global/_translation_strings_used"      1       77.37

My questions for you:
 * have you conducted any load testing? What kind of results did you get?
 * any tips on how to identify the bottlenecks or sources of
performance problems?
 * any other links to general advice?

Thanks for any input you can give.

David

--
http://davidheath.org/

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"symfony users" group.
To post to this group, send email to symfony-users@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/symfony-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to