Forums / Install & configuration / Best php cache for eZ Publish?

Best php cache for eZ Publish?

Author Message

Andreas Kaiser

Tuesday 31 March 2009 6:26:50 am

For Drupal, some time ago somebody made a comparison of APC, eAccelerator and Xcache: http://2bits.com/articles/benchmarking-drupal-with-php-op-code-caches-apc-eaccelerator-and-xcache-compared.html

eZ System recommends an accelerator like APC, eAccelerator, Zend Platform.

We are using APC, eAccelerator and Xcache in different servers (but we can't make a comparison because some servers are client ones...)

What accelerator are you using/think it's the best for ezp 4.x?

eZ Partner in Madrid (Spain)
Web: http://www.atela.net/

André R.

Tuesday 31 March 2009 7:56:33 am

In PHP 4 we used to recommend eAccelerator or APC, in that order because eAccelerator had slightly better performance.

In PHP 5 however the gap is close to non existence, even seen APC performing better with eZ Publish in some benchmarks. APC also seems to be the only actively developed php op cacher, so I would personally recommend APC.

Other arguments: APC will be part of PHP 6.0 and the article you point to mentions segmentation faults in xcache and eAccelerator.

eZ Online Editor 5: http://projects.ez.no/ezoe || eZJSCore (Ajax): http://projects.ez.no/ezjscore || eZ Publish EE http://ez.no/eZPublish/eZ-Publish-Enterprise-Subscription
@: http://twitter.com/andrerom

Andreas Kaiser

Wednesday 01 April 2009 8:26:11 am

Thanks Andre,

We also used eaccelerator with ezp3x (PHP4) with great results, because of some other benchmarks that show eaccelerator performed not very good with PHP5 we used APC and Xcache in ezp 4 (PHP5)

The funny is that in other articles I read that APC had segmentation faults (and Xcache didn't)...

So I really opened this topic to have feedback of comments about php accelerators in relation with ez publish...

But now knowing that APC will be part of PHP6 I will go only with APC - the good is that we just installed APC in our last server installation!

eZ Partner in Madrid (Spain)
Web: http://www.atela.net/

Gaetano Giunta

Wednesday 01 April 2009 10:58:55 am

I have no specific info about speed differences of php caches in relation to eZP, all I can say is that I have seen all (of the free ones) crash and burn on different setups, and behave extra-stable on others. It is porobably a matter of different php application, php version and compilation options, linked libraries and os...

APC is for sure the one with more traction, as there are more devs behind it, and most of them are php kernel devs. The main problem with both eAccelerator and XCache looks like the small number of developers that hack on them.

Principal Consultant International Business
Member of the Community Project Board

Damien Pobel

Thursday 02 April 2009 2:03:30 am

Hi,

About a year ago I made a benchmark between eZ Publish 3.10 and eZ Publish 4 [1] with xcache, eAccelerator, APC and without any opcode cache.

With PHP4, eAccelarator was the best (about 10%), but with PHP5 there was nearly no difference. So I think the best opcode cache is probably the one you're able to configure correctly. And as André said, PHP6 should be bundled with APC, so it can also be a good choice right now.

[1] http://pwet.fr/blog/benchmark_between_ez_publish_4_and_ez_publish_3_10_with_or_without_a_php_opcode_cache

Cheers !

Damien
Planet eZ Publish.fr : http://www.planet-ezpublish.fr
Certification : http://auth.ez.no/certification/verify/372448
Publications about eZ Publish : http://pwet.fr/tags/keywords/weblog/ez_publish

anny sharing

Sunday 26 December 2010 11:07:27 pm

Cache reduces the server's pressure to calcute things(pretty simple definition right?)
especially MySQL queries, which can become numerous on a sigle page; Mix this with a few
dozen visitors on your website in a single minute who will each visit websites with
particular queries and you could easily get up to hundreds of queries per minute,That
could slow your server, and caching stuff makes the charge quite lighter.

If you want to know more free PHP cache script you can check out at PHPKode.com

eZ debug

Timing: Jan 18 2025 04:14:05
Script start
Timing: Jan 18 2025 04:14:05
Module start 'content'
Timing: Jan 18 2025 04:14:06
Module end 'content'
Timing: Jan 18 2025 04:14:06
Script end

Main resources:

Total runtime1.0441 sec
Peak memory usage4,096.0000 KB
Database Queries210

Timing points:

CheckpointStart (sec)Duration (sec)Memory at start (KB)Memory used (KB)
Script start 0.00000.0056 589.2578180.8281
Module start 'content' 0.00560.9096 770.0859709.7500
Module end 'content' 0.91520.1288 1,479.8359341.0703
Script end 1.0440  1,820.9063 

Time accumulators:

 Accumulator Duration (sec) Duration (%) Count Average (sec)
Ini load
Load cache0.00370.3581210.0002
Check MTime0.00140.1360210.0001
Mysql Total
Database connection0.00080.071910.0008
Mysqli_queries0.954791.43822100.0045
Looping result0.00230.22142080.0000
Template Total1.015197.220.5076
Template load0.00190.185720.0010
Template processing1.013297.040820.5066
Template load and register function0.00020.017210.0002
states
state_id_array0.00130.125810.0013
state_identifier_array0.00130.128720.0007
Override
Cache load0.00170.1610390.0000
Sytem overhead
Fetch class attribute can translate value0.00190.186060.0003
Fetch class attribute name0.00200.1944100.0002
XML
Image XML parsing0.00230.222860.0004
class_abstraction
Instantiating content class attribute0.00000.0018110.0000
General
dbfile0.00230.2233460.0001
String conversion0.00000.000530.0000
Note: percentages do not add up to 100% because some accumulators overlap

CSS/JS files loaded with "ezjscPacker" during request:

CacheTypePacklevelSourceFiles
CSS0extension/community/design/community/stylesheets/ext/jquery.autocomplete.css
extension/community_design/design/suncana/stylesheets/scrollbars.css
extension/community_design/design/suncana/stylesheets/tabs.css
extension/community_design/design/suncana/stylesheets/roadmap.css
extension/community_design/design/suncana/stylesheets/content.css
extension/community_design/design/suncana/stylesheets/star-rating.css
extension/community_design/design/suncana/stylesheets/syntax_and_custom_tags.css
extension/community_design/design/suncana/stylesheets/buttons.css
extension/community_design/design/suncana/stylesheets/tweetbox.css
extension/community_design/design/suncana/stylesheets/jquery.fancybox-1.3.4.css
extension/bcsmoothgallery/design/standard/stylesheets/magnific-popup.css
extension/sevenx/design/simple/stylesheets/star_rating.css
extension/sevenx/design/simple/stylesheets/libs/fontawesome/css/all.min.css
extension/sevenx/design/simple/stylesheets/main.v02.css
extension/sevenx/design/simple/stylesheets/main.v02.res.css
JS0extension/ezjscore/design/standard/lib/yui/3.17.2/build/yui/yui-min.js
extension/ezjscore/design/standard/javascript/jquery-3.7.0.min.js
extension/community_design/design/suncana/javascript/jquery.ui.core.min.js
extension/community_design/design/suncana/javascript/jquery.ui.widget.min.js
extension/community_design/design/suncana/javascript/jquery.easing.1.3.js
extension/community_design/design/suncana/javascript/jquery.ui.tabs.js
extension/community_design/design/suncana/javascript/jquery.hoverIntent.min.js
extension/community_design/design/suncana/javascript/jquery.popmenu.js
extension/community_design/design/suncana/javascript/jScrollPane.js
extension/community_design/design/suncana/javascript/jquery.mousewheel.js
extension/community_design/design/suncana/javascript/jquery.cycle.all.js
extension/sevenx/design/simple/javascript/jquery.scrollTo.js
extension/community_design/design/suncana/javascript/jquery.cookie.js
extension/community_design/design/suncana/javascript/ezstarrating_jquery.js
extension/community_design/design/suncana/javascript/jquery.initboxes.js
extension/community_design/design/suncana/javascript/app.js
extension/community_design/design/suncana/javascript/twitterwidget.js
extension/community_design/design/suncana/javascript/community.js
extension/community_design/design/suncana/javascript/roadmap.js
extension/community_design/design/suncana/javascript/ez.js
extension/community_design/design/suncana/javascript/ezshareevents.js
extension/sevenx/design/simple/javascript/main.js

Templates used to render the page:

UsageRequested templateTemplateTemplate loadedEditOverride
1node/view/full.tplfull/forum_topic.tplextension/sevenx/design/simple/override/templates/full/forum_topic.tplEdit templateOverride template
5content/datatype/view/ezimage.tpl<No override>extension/sevenx/design/simple/templates/content/datatype/view/ezimage.tplEdit templateOverride template
6content/datatype/view/ezxmltext.tpl<No override>extension/community_design/design/suncana/templates/content/datatype/view/ezxmltext.tplEdit templateOverride template
7content/datatype/view/ezxmltags/paragraph.tpl<No override>extension/ezwebin/design/ezwebin/templates/content/datatype/view/ezxmltags/paragraph.tplEdit templateOverride template
1content/datatype/view/ezxmltags/line.tpl<No override>design/standard/templates/content/datatype/view/ezxmltags/line.tplEdit templateOverride template
1content/datatype/view/ezxmltags/link.tpl<No override>design/standard/templates/content/datatype/view/ezxmltags/link.tplEdit templateOverride template
1pagelayout.tpl<No override>extension/sevenx/design/simple/templates/pagelayout.tplEdit templateOverride template
 Number of times templates used: 22
 Number of unique templates used: 7

Time used to render debug report: 0.0002 secs