I migrate from postnuke to Zikula 1.1.2 and then tozikula 1.2.4 but maybe it was not a good idea, why?:
Zikula performance and loading speed is worse than postnuke, I'm making the comparison on the same machine with the same database (migrated in the case of Zikula of course)
I noticed several things:
1) When postnuke only needed 1 or 2 CSS files, Zikula uses 1 CSS file for each module used. I have 15 CSS files loaded now. The same with javascript files.
2) Zikula mixture in a single table "ppal_objectdata_attributes" users dynamic data with other data of the core fundamentals. This means that if you have a lot of users like me, ppal_objectdata_attributes table occupies 300 Mb And as in this table data are fundamental to the core, it is consulting continuously
I keep researching and commenting on what you find ...
You agree with this ?
Watch
GitHub Core
Show your support for Zikula! Sign up at Github account and watch the Core project!
GitHub Modules
- craigh responded to »Using PageUtil::addVar() to load script code« 03:29 PM
- michiel responded to »password problem« 10:01 AM
- mazdev responded to »Hide "Register new account" and change template to 3 col« 07:50 AM
- mesteele101 created topic »Zikula 1.3.3 - Site Search 1.5.2 - Unable to turn off plug-ins« 07:48 AM
- mesteele101 responded to »ERR (3): E_USER_ERROR: Smarty error: [in pagesvar:pagesitem2en line XXX]…« 25. May
- mazdev responded to »Pages 2.5.0 and updating - Page not found« 25. May
- mesteele101 responded to »Zikula 1.3.3 - Selecting a category in Pages not working« 25. May
Zikula Blog
- Anatomy of Open Source Projects on Mar 07
- Continuous Review on Mar 01
- Not Invented Here on Feb 24
- How to Contribute Your Code at Github on Jan 13
- 10 Steps to Coding-Nirvana: Tips for Successful Module Writing on Nov 12
- Submitting Bug Report Tickets That Get Results on Aug 17
- Cozi Tricks #1: Syntax Highlighting on Aug 07
Login
Migrating Postnuke to Zikula, a good idea if you need speed?
-
- Rank: Registered User
- Registered: Jul 05, 2004
- Last visit: Nov 25, 2008
- Posts: 10
-
- Rank: Team Member
- Registered: Jan 05, 2003
- Last visit: May 28, 2010
- Posts: 776
Hi,
generally speaking, moving from PostNuke to Zikula is a very good idea because Zikula is future-proof while PostNuke most certainly is not. On top of this, Zikula in corporates many security enhancements.
As for your issues:
#1 can be alleviated by using your .htaccess file set caching on for such files
#2 can be alleviated by improving indexing on the objectdata_attributes table. You may have to do some investigating to see what type of query causes the slowdown, but in principle MySql should be able to handle such data volumes efficiently.
Greetings
Robert -
- Rank: Developer
- Registered: Feb 17, 2005
- Last visit: May 21, 2010
- Posts: 684
#1 switch on CSS/JS optimization in you themesmanager settings and you will have only CSS file and one JS file. -
- Rank: Helper
- Registered: Sep 19, 2003
- Last visit: May 25, 2010
- Posts: 612
dits
#1 switch on CSS/JS optimization in you themesmanager settings and you will have only CSS file and one JS file.
This screws up some themes. For me, my fonts get all tweaked out of size. -
- Rank: Developer
- Registered: Feb 17, 2005
- Last visit: May 21, 2010
- Posts: 684
mesteele101
This screws up some themes. For me, my fonts get all tweaked out of size.
That should be fixed in 1.2.5. Alternatively like Robert mentioned you can have the CSS and JavaScript cached. Your .htaccess could contain something like this:
Code
# make sure users's browsers cache content
AddType application/x-httpd-php .php
AddType text/css .css
AddType application/x-javascript .js
ExpiresActive on
ExpiresByType image/jpeg "access plus 1 month"
ExpiresByType image/gif "access plus 1 month"
ExpiresByType image/png "access plus 1 month"
ExpiresByType image/x-icon "access plus 1 month"
ExpiresByType text/css "access plus 1 week"
ExpiresByType text/javascript "access plus 1 week"
ExpiresByType application/x-javascript "access plus 1 week"
ExpiresDefault "access plus 1 hour"
# compression
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css application/x-javascript
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
# no ETags
FileETag None
I often use the YSlow plugin for Firefox to test and optimize. -
- Rank: Helper
- Registered: Sep 19, 2003
- Last visit: May 25, 2010
- Posts: 612
I'm running 1.2.5 -
The below is my .htaccess that is located in the root of my web folder:
Code
# Security options, if they work in your environment. If you get a 500 error, then they won't.
# These settings are best turned off in php.ini and will be on modern hosting environments.
# php_flag register_globals off
# php_flag magic_quotes_gpc off
php_flag magic_quotes_gpc = OFF
php_flag allow_url_fopen = ON
php_flag display_errors = OFF
php_flag expose_php = OFF
php_flag disable_functions = show_source, system, shell_exec, passthru, exec, popen, proc_open
So my .htaccess should look like this:
Code
# Security options, if they work in your environment. If you get a 500 error, then they won't.
# These settings are best turned off in php.ini and will be on modern hosting environments.
# php_flag register_globals off
# php_flag magic_quotes_gpc off
php_flag magic_quotes_gpc = OFF
php_flag allow_url_fopen = ON
php_flag display_errors = OFF
php_flag expose_php = OFF
php_flag disable_functions = show_source, system, shell_exec, passthru, exec, popen, proc_open
# make sure users's browsers cache content
AddType application/x-httpd-php .php
AddType text/css .css
AddType application/x-javascript .js
ExpiresActive on
ExpiresByType image/jpeg "access plus 1 month"
ExpiresByType image/gif "access plus 1 month"
ExpiresByType image/png "access plus 1 month"
ExpiresByType image/x-icon "access plus 1 month"
ExpiresByType text/css "access plus 1 week"
ExpiresByType text/javascript "access plus 1 week"
ExpiresByType application/x-javascript "access plus 1 week"
ExpiresDefault "access plus 1 hour"
# compression
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css application/x-javascript
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
# no ETags
FileETag None -
- Rank: Developer
- Registered: Feb 17, 2005
- Last visit: May 21, 2010
- Posts: 684
That should work yes. Basically the addition would do three things:- cache images, CSS and JavaScript,
- turn on compression when 'applicable', and
- switch ETags off.
- Moderated by:
- Support
