Forums / General / Cluster Cache Question

Cluster Cache Question

Author Message

Felipe Jaramillo

Friday 28 September 2007 9:17:17 am

Hello all,

We are studying using cluster solutions in some sites. The documentation page (http://ez.no/doc/ez_publish/technical_manual/3_9/features/clustering) says:

"Data that must be synchronized between the different servers is stored using the database:

* Binary files
* Image and image alias files
* Caches related to content:
o Content view cache
o Template block cache
o Expiry cache
o URL alias cache
o RSS cache
o User info cache
o Class identifier cache
o Sort key cache

Other files are stored using the filesystem, including (but not limited to):

* INI files
* Template files
* Compiled templates
* PHP files
* Log files
* Caches that are not related to content:
o Global INI cache
o INI cache
o Codepage cache
o Character transformation cache
o Template cache
o Template override cache

My question is about how these files, especially INI Files are shared or syncronized among the cluster nodes.

Does a normal cluster setup require an rsync of these files? Wouldn't it be better to store everything on the DB?

Thanks in advance! "

Regards,

Felipe

Felipe Jaramillo
eZ Certified Extension Developer
http://www.aplyca.com | Bogotá, Colombia

Xavier Dutoit

Friday 28 September 2007 9:42:48 am

Hi,


[DatabaseSettings]
DatabaseImplementation=ezmysql
Server=localhost
User=itwillbe
Password=quitedifficultto
Database=retrievefromthedb

;)

What do you have against rsync ?

http://www.sydesy.com

Felipe Jaramillo

Friday 28 September 2007 9:19:39 pm

Xavier,

Good point, it was hilarious!

This is the story: one of our clients datacenter security department decided they would not let any traffic from port 80 change any files in the filesystem, after having security problems with other web solutions.

It is pretty obvious what one would think of a security policy like this, but for now we are forced to take the time to consider how this could be achieved.

All cache that can expire or be cleared, should eventually be able to generate itself into the DB through normal traffic in port 80, while the admin area runs in a more relaxed port 8080.

The way we're doing this is to use a cluster configuration on a single server, but need to be able to persist things like INI cache, template cache and probably compiled template cache too.

Regards,

Felipe

Felipe Jaramillo
eZ Certified Extension Developer
http://www.aplyca.com | Bogotá, Colombia

André R.

Saturday 29 September 2007 3:39:51 am

Be aware of higher mysql load with the cluster setup.
Thats one reason why not everything is in db, it wouldn't make sense.

Also be aware that the cluster soulution is higly improved in 3.10, but only works in mysql now.
So since 3.10 is about to be finalised you might want to use 3.10 or 4.0 ( the php5 version) from the beginning.

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

eZ debug

Timing: Jan 18 2025 05:18:16
Script start
Timing: Jan 18 2025 05:18:16
Module start 'content'
Timing: Jan 18 2025 05:18:17
Module end 'content'
Timing: Jan 18 2025 05:18:17
Script end

Main resources:

Total runtime1.4527 sec
Peak memory usage4,096.0000 KB
Database Queries199

Timing points:

CheckpointStart (sec)Duration (sec)Memory at start (KB)Memory used (KB)
Script start 0.00000.0126 589.0313180.8516
Module start 'content' 0.01261.3125 769.8828603.1875
Module end 'content' 1.32510.1275 1,373.0703337.3906
Script end 1.4526  1,710.4609 

Time accumulators:

 Accumulator Duration (sec) Duration (%) Count Average (sec)
Ini load
Load cache0.00420.2907210.0002
Check MTime0.00170.1169210.0001
Mysql Total
Database connection0.00080.057410.0008
Mysqli_queries1.369294.25381990.0069
Looping result0.00190.13411970.0000
Template Total1.395096.020.6975
Template load0.00210.145920.0011
Template processing1.392995.881820.6964
Template load and register function0.00020.012710.0002
states
state_id_array0.00180.122610.0018
state_identifier_array0.00460.313520.0023
Override
Cache load0.00190.1282570.0000
Sytem overhead
Fetch class attribute can translate value0.00160.112740.0004
Fetch class attribute name0.00130.089860.0002
XML
Image XML parsing0.00160.109540.0004
class_abstraction
Instantiating content class attribute0.00000.000960.0000
General
dbfile0.00400.2742340.0001
String conversion0.00000.000330.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
4content/datatype/view/ezxmltext.tpl<No override>extension/community_design/design/suncana/templates/content/datatype/view/ezxmltext.tplEdit templateOverride template
9content/datatype/view/ezxmltags/paragraph.tpl<No override>extension/ezwebin/design/ezwebin/templates/content/datatype/view/ezxmltags/paragraph.tplEdit templateOverride template
5content/datatype/view/ezxmltags/line.tpl<No override>design/standard/templates/content/datatype/view/ezxmltags/line.tplEdit templateOverride template
2content/datatype/view/ezimage.tpl<No override>extension/sevenx/design/simple/templates/content/datatype/view/ezimage.tplEdit templateOverride template
1content/datatype/view/ezxmltags/literal.tpl<No override>extension/community/design/standard/templates/content/datatype/view/ezxmltags/literal.tplEdit templateOverride template
1pagelayout.tpl<No override>extension/sevenx/design/simple/templates/pagelayout.tplEdit templateOverride template
 Number of times templates used: 23
 Number of unique templates used: 7

Time used to render debug report: 0.0002 secs