Author
|
Message
|
kevin wei
|
Wednesday 04 January 2006 8:05:39 pm
i will design a big community site with EZ, it's a easy paltform,but i womder if EZ can support 2000 online, and 1 million posts, and many template query ? EZ will be very slow or crash during this situation??? i use AMD 3000+ 2.8G, 2G memo, when i view the site only, sometime CPU will be 80%,and there are no other application. can you give me some advise?
|
Björn [email protected]
|
Thursday 05 January 2006 1:38:39 am
to give oyu an idea a single server can serve 5 to 20 concurrent requests per second depending on hardware. To answer your question we need to know about your peaks and concurrent requests per second.
Looking for a new job? http://www.xrow.com/xrow-GmbH/Jobs
Looking for hosting? http://hostingezpublish.com
-----------------------------------------------------------------------------
GMT +01:00 Hannover, Germany
Web: http://www.xrow.com/
|
Kåre Køhler Høvik
|
Thursday 05 January 2006 2:01:11 am
Are you expecting 2000 logged in or anonymous users ? It's extremly important to optimize the pagelayout, and content cache when dealing with high traffic and eZ publish. You might also be able to use the static cache : http://ez.no/doc/ez_publish/technical_manual/3_6/reference/configuration_files/staticcache_ini See also : http://ez.no/community/forum/general/ez_speed_optimisation_faq
Kåre Høvik
|
Bård Farstad
|
Thursday 05 January 2006 2:13:17 am
Here on ez.no we currently have 11 registered (logged in) and 1526 anonymous sessions right now. We have set the session timeout to 15 minutes (default in eZ publish is one hour). It does depend on how you measure the 2000 online users and what they do. We're serving about 5-7 million pageviews from the ez.no site pr month currently. Which translates to about 200.000 pr day or approx 140 requests pr minute in average). We have about 100.000 objects in eZ publish here where 50.000 is posts in the forums. Hope this answered your question. Cheers, --bård
Documentation: http://ez.no/doc
|
kevin wei
|
Thursday 05 January 2006 3:08:16 am
i am doing a very interesting project, it will have more than 2000 user online at the same time,. and some anonymous (user will post, guest just view) and there are many query in template, for example: a page dispaly 5 latest forum post, i will display the post owner name, and his latest 5 post in other folder, and 5 similiar article according keyword, top 5 post according the number of reply in this form etc.
although i do not know how to list top 5 post,here is my post: http://ez.no/community/forum/developer/top_users_according_to_number_of_edits_posts#msg70041
|
Thomas Nunninger
|
Thursday 05 January 2006 4:44:16 am
Hi, I would be very interested in the "bottlenecks" of eZ publish. What are the technical reasons? Where does problems in situations like this rise?
- high traffic
- many users loged in
- personalized content - many content changing / creating Is it the template processing? (If it is only the template processing I would be able to use many webservers connecting to one database.) Or is it the database? (Ok there are coherences: if you have much template processing database requests will rise.) I guess the main problem is the database. But which parts? The content object modell? The sessions? Something else? And: are there any solutions in eZ publish 4? I'm curious about your answers. Have a nice day Thomas
|
kevin wei
|
Thursday 05 January 2006 6:40:45 am
yes, my site has all these feature:
- high traffic 10000-20000 unique ip/day, 60000-100000 pv/day
- many users loged in it's community, have thousands users
- personalized content show many related info
- many content changing / creating submit many posts
|
Thomas Nunninger
|
Thursday 05 January 2006 9:52:23 am
@Kevin Thanks for your data. But I think this wasn't my question :-) Thomas
|
Björn [email protected]
|
Thursday 05 January 2006 4:06:58 pm
From my estimate I would say you have 4 request per second at peak time 100000 / 8 hours of traffic = about 4 request per second I don't know if this a proper calculation towards your problem, but if this is the case it looks like a strong single server can do it even with personalized content. Though I ignored the fact that you have that much content in the database. The size is something I can't really throw estimates on.
Looking for a new job? http://www.xrow.com/xrow-GmbH/Jobs
Looking for hosting? http://hostingezpublish.com
-----------------------------------------------------------------------------
GMT +01:00 Hannover, Germany
Web: http://www.xrow.com/
|
Andrew Kelly
|
Monday 13 February 2006 5:11:18 am
OK, how about a more concrete problem scenario.. I wish to build a community site that will have between 500 thousand and 6 million users. At any given time, 25 thousand of these users may be logged in and using the community. Typical community use will be sending mail to system users, participating in forums, searching for registered users with filtering on geographic location and certain topic lists, updating personal information.
Can an eZ installation handle this type of scenario?
If not, at which levels does it break down? Given the scenario described, what is the functional maximum number of registered users, and what is the functional maximum number of concurrently logged in and active users? Andy
|
Kåre Køhler Høvik
|
Monday 13 February 2006 5:30:39 am
> Can an eZ installation handle this type of scenario? Not without modifications.
> If not, at which levels does it break down?
The system will not be able to put 6 million users in the content tree, at the same location/level. This can however be fixed by creating a content-list for storing content objects/users.
The forum should work, but you'll need to create the forum templates with great care, to prevent heavy SQLs. The search will require an agressive stop-word setting to perform well. # of logged in users should not cause any problems. The practical amount of data at 1 location in the content tree seems to be around 50-150k objects, depending on the database/hardware of course. By spreading the content to several nodes, you'll be able to store alot more data. A cluster setup will be required in order to handle the overall system load.
Kåre Høvik
|
Andrew Kelly
|
Tuesday 14 February 2006 5:36:50 am
Thanks for your response, Kåre. When you say ".. by creating a content-list for storing content objects/users", are you talking about having multiple nodes to store user objects? For example having a node for each letter of the latin alphabet and storing the user objects correspondingly? And when you suggest a cluster, are you talking about an SQL server cluster? Andy
|
Kåre Køhler Høvik
|
Wednesday 15 February 2006 12:18:54 am
Hi Andrew The standard way to store content objects at the moment, is to store them in the content tree. This makes it easy to navigate, but has a scalability drawback ( as mentioned earlier ). It is also possible to store the content objects using other structures ( list, matrix, grid, etc. ), but none of these ways has been implemented yet. By creating a list/matrix/etc. structure we'd remove parts of the scalability problems. We have not set aside resources to develop this in the near future, but it's possible to get it developed using our support service ( http://ez.no/services/support ).
Kåre Høvik
|
Tony Wood
|
Friday 17 February 2006 2:26:30 am
Hi Bard, Can eZ provide some benchmark figures for a site with 1 Million users. It should be easy to create it will just take some time. We really need to get to grips with the sizing issue. I need to ensure that the underlying database structure can handle 1 million+ objects. From a front end point of view the user selection mechanism will break and you will need to go to a custom search lookup. Any comments? tony
Tony Wood : twitter.com/tonywood
Vision with Technology
Experts in eZ Publish consulting & development
Power to the Editor!
Free eZ Training : http://www.VisionWT.com/training
eZ Future Podcast : http://www.VisionWT.com/eZ-Future
|
Kåre Køhler Høvik
|
Friday 17 February 2006 4:00:51 am
Hi Tony I'm setting up a test system now with 1000000 users in 1 location, and 500000 users in another location. I'll be gone the next week, but when I'm back in week 9, I'll probably have some performance numbers.
Kåre Høvik
|
Tony Wood
|
Friday 17 February 2006 4:36:04 am
Thanks Kare,
We have got some test scripts here so I am going to set a test machine running so I cam do some testing with 1m+ records. Lets compare notes in a week. Trust me it is going to take that long to run this import script :) tony
Tony Wood : twitter.com/tonywood
Vision with Technology
Experts in eZ Publish consulting & development
Power to the Editor!
Free eZ Training : http://www.VisionWT.com/training
eZ Future Podcast : http://www.VisionWT.com/eZ-Future
|
Gabriel Ambuehl
|
Friday 17 February 2006 4:46:25 am
Do you think it would be possible to put the import script on pubsvn? Mass import GREATLY benefits by disabling search, BTW ;)
Visit http://triligon.org
|
Tony Wood
|
Friday 17 February 2006 4:55:28 am
I think to call it import is a little too big. It's just a small one that works on our environment. I cannot post sorry.
Tony Wood : twitter.com/tonywood
Vision with Technology
Experts in eZ Publish consulting & development
Power to the Editor!
Free eZ Training : http://www.VisionWT.com/training
eZ Future Podcast : http://www.VisionWT.com/eZ-Future
|
Paul Forsyth
|
Friday 17 February 2006 5:09:01 am
It is quite simple - just a eZ script with a for loop to create a new object some 1 million times! yes, we have delayed indexing on. having xdebug off too also gives a big boost. paul
|
Andrew Kelly
|
Monday 20 February 2006 5:22:26 am
Kåre, Tony, Paul, I'm not quite clear on the testing being discussed, sorry. Are we talking here about 1m+ users being stored in the conventional, currently deployed default method, or using one of the storage methods mentioned by Kåre? And by the way, how ready is the eZ system for being de-coupled from its own storage paradigm and hammered into a datawarehousing type of configuration? Is there an API available for communication between the standard content entry/display and say, an external DB of more performance oriented storage?
As an ugly example: Could I use a deployment of eZ sitting on Google? (The goal being eZ handling all the pretty, pretty, accompanying text, multilinguality, delivery to browser, etc., and Google handling storage and retrieval of the actual requested data.) Andy
|