Forums / Install & configuration / Performance problems

Performance problems

Author Message

John Champaign

Thursday 02 November 2006 10:57:20 am

Hi all,

I've been having on-going performance issues with the ez publish system I've been installing for a client. Recently I have tried adding an extensions based translation file, and currently often when I try to load a page that uses the new translations it times out (although sometimes it loads and displays properly).

In the warning.log file I'm getting tons of messages like:

[ Oct 31 2006 14:59:39 ] [207.112.65.134] ezi18n:
No translation for file(translation.ts) in context(design/standard/error/kernel): 'Possible reasons for this are' with comment()
[ Oct 31 2006 14:59:39 ] [207.112.65.134] ezi18n:
No translation for file(translation.ts) in context(design/standard/error/kernel): 'The view name was misspelled, try changing the URL.' with comment()
[ Oct 31 2006 14:59:39 ] [207.112.65.134] ezi18n:
No translation for file(translation.ts) in context(design/standard/error/kernel): 'This site uses siteaccess matching in the URL and you didn't supply one, try inserting a siteaccess name before the module in the URL .' with comment()

My translation file is basically empty.

My phpinfo() is pasted below (quite long).

In addition to this, the system has always been quite sluggish, even though the hosting company moved up to a dedicated server. Does anyone have any idea what might be leading to the general performance problems, and how I might be able to tell the host to fix them (I don't have shell access to the machine its running on unfortunately), or if my translation extension is set up incorrectly?

Thanks for any thoughts!

John

PHP Version 4.4.2

System 	Linux calisto.tcn.net 2.4.21-20.ELsmp #1 SMP Wed Aug 18 20:46:40 EDT 2004 i686
Build Date 	Sep 5 2006 13:21:55
Configure Command 	'./configure' '--with-zlib' '--with-mysql' '--with-apxs=/usr/local/apache_1.3.29/bin/apxs' '--with-gd' '--enable-mbstring' '--with-ttf' '--enable-gd-native-ttf' '--with-freetype-dir'
Server API 	Apache
Virtual Directory Support 	disabled
Configuration File (php.ini) Path 	/usr/local/lib/php.ini
PHP API 	20020918
PHP Extension 	20020429
Zend Extension 	20050606
Debug Build 	no
Zend Memory Manager 	enabled
Thread Safety 	disabled
Registered PHP Streams 	php, http, ftp, compress.zlib

PHP Credits
Configuration
PHP Core
Directive	Local Value	Master Value
allow_call_time_pass_reference	Off	Off
allow_url_fopen	On	On
always_populate_raw_post_data	Off	Off
arg_separator.input	&	&
arg_separator.output	&	&
asp_tags	Off	Off
auto_append_file	no value	no value
auto_prepend_file	no value	no value
browscap	no value	no value
default_charset	no value	no value
default_mimetype	text/html	text/html
define_syslog_variables	Off	Off
disable_classes	no value	no value
disable_functions	no value	no value
display_errors	Off	Off
display_startup_errors	Off	Off
doc_root	no value	no value
docref_ext	no value	no value
docref_root	no value	no value
enable_dl	On	On
error_append_string	no value	no value
error_log	no value	no value
error_prepend_string	no value	no value
error_reporting	2047	2047
expose_php	On	On
extension_dir	./	./
file_uploads	On	On
gpc_order	GPC	GPC
highlight.bg	#FFFFFF	#FFFFFF
highlight.comment	#FF8000	#FF8000
highlight.default	#0000BB	#0000BB
highlight.html	#000000	#000000
highlight.keyword	#007700	#007700
highlight.string	#DD0000	#DD0000
html_errors	On	On
ignore_repeated_errors	Off	Off
ignore_repeated_source	Off	Off
ignore_user_abort	Off	Off
implicit_flush	Off	Off
include_path	.:/usr/local/lib/php	.:/usr/local/lib/php
log_errors	On	On
log_errors_max_len	1024	1024
magic_quotes_gpc	Off	Off
magic_quotes_runtime	Off	Off
magic_quotes_sybase	Off	Off
max_execution_time	300	300
max_input_time	60	60
open_basedir	no value	no value
output_buffering	4096	4096
output_handler	no value	no value
post_max_size	8M	8M
precision	14	14
register_argc_argv	Off	Off
register_globals	Off	Off
report_memleaks	On	On
safe_mode	Off	Off
safe_mode_exec_dir	no value	no value
safe_mode_gid	Off	Off
safe_mode_include_dir	no value	no value
sendmail_from	no value	no value
sendmail_path	/usr/sbin/sendmail -t -i 	/usr/sbin/sendmail -t -i 
serialize_precision	100	100
short_open_tag	On	On
SMTP	localhost	localhost
smtp_port	25	25
sql.safe_mode	Off	Off
track_errors	Off	Off
unserialize_callback_func	no value	no value
upload_max_filesize	2M	2M
upload_tmp_dir	no value	no value
user_dir	no value	no value
variables_order	GPCS	GPCS
xmlrpc_error_number	0	0
xmlrpc_errors	Off	Off
y2k_compliance	On	On

apache
APACHE_INCLUDE 	no value
APACHE_TARGET 	no value
Apache Version 	Apache/1.3.29 (Unix) PHP/4.4.2
Apache Release 	10329100
Apache API Version 	19990320
Hostname:Port 	www.lepopprof.ca:80
User/Group 	nobody(99)/99
Max Requests 	Per Child: 0 - Keep Alive: on - Max Per Connection: 100
Timeouts 	Connection: 500 - Keep-Alive: 15
Server Root 	/usr/local/apache_1.3.29
Loaded Modules 	mod_php4, mod_setenvif, mod_so, mod_auth, mod_access, mod_alias, mod_userdir, mod_actions, mod_imap, mod_asis, mod_cgi, mod_dir, mod_autoindex, mod_include, mod_status, mod_negotiation, mod_mime, mod_log_config, mod_env, http_core

Directive	Local Value	Master Value
child_terminate	0	0
engine	1	1
last_modified	0	0
xbithack	0	0

Apache Environment
Variable	Value
DOCUMENT_ROOT 	/usr/www/patonpublishing/docs/
HTTP_ACCEPT 	text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
HTTP_ACCEPT_CHARSET 	ISO-8859-1,utf-8;q=0.7,*;q=0.7
HTTP_ACCEPT_ENCODING 	gzip,deflate
HTTP_ACCEPT_LANGUAGE 	en-us,en;q=0.5
HTTP_CONNECTION 	keep-alive
HTTP_COOKIE 	eZSESSIDcorporate_site=f737fb2abdb17745c5e83765fa40a7a8; eZSESSIDcorporate_site_french=5ab0430de0176d0278c90221cc1d0275; eZSESSIDcorporate_site_admin=e2855687f33ca73c5e7610f4f24dab67; ezcst_unfolded_node_list=n2
HTTP_HOST 	www.popmagazine.com
HTTP_KEEP_ALIVE 	300
HTTP_USER_AGENT 	Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.7) Gecko/20060909 Firefox/1.5.0.7
PATH 	/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/bin
REMOTE_ADDR 	207.112.65.134
REMOTE_PORT 	3435
SCRIPT_FILENAME 	/usr/www/patonpublishing/docs/test.php
SERVER_ADDR 	199.166.4.188
SERVER_ADMIN 	[email protected]
SERVER_NAME 	www.lepopprof.ca
SERVER_PORT 	80
SERVER_SIGNATURE 	<ADDRESS>Apache/1.3.29 Server at www.lepopprof.ca Port 80</ADDRESS>
SERVER_SOFTWARE 	Apache/1.3.29 (Unix) PHP/4.4.2
GATEWAY_INTERFACE 	CGI/1.1
SERVER_PROTOCOL 	HTTP/1.1
REQUEST_METHOD 	GET
QUERY_STRING 	no value
REQUEST_URI 	/test.php
SCRIPT_NAME 	/test.php

HTTP Headers Information
HTTP Request Headers
HTTP Request 	GET /test.php HTTP/1.1
Accept 	text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Charset 	ISO-8859-1,utf-8;q=0.7,*;q=0.7
Accept-Encoding 	gzip,deflate
Accept-Language 	en-us,en;q=0.5
Connection 	keep-alive
Cookie 	eZSESSIDcorporate_site=f737fb2abdb17745c5e83765fa40a7a8; eZSESSIDcorporate_site_french=5ab0430de0176d0278c90221cc1d0275; eZSESSIDcorporate_site_admin=e2855687f33ca73c5e7610f4f24dab67; ezcst_unfolded_node_list=n2
Host 	www.popmagazine.com
Keep-Alive 	300
User-Agent 	Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.7) Gecko/20060909 Firefox/1.5.0.7
HTTP Response Headers
X-Powered-By 	PHP/4.4.2
Keep-Alive 	timeout=15, max=100
Connection 	Keep-Alive
Transfer-Encoding 	chunked
Content-Type 	text/html

apc
APC Support 	enabled
Version 	3.0.12p2
MMAP Support 	Enabled
MMAP File Mask 	no value
Revision 	$Revision: 3.104 $
Build Date 	Sep 5 2006 15:27:59

Directive	Local Value	Master Value
apc.cache_by_default	On	On
apc.enable_cli	Off	Off
apc.enabled	On	On
apc.file_update_protection	2	2
apc.filters	no value	no value
apc.gc_ttl	3600	3600
apc.include_once_override	Off	Off
apc.max_file_size	1M	1M
apc.mmap_file_mask	no value	no value
apc.num_files_hint	1000	1000
apc.optimization	Off	Off
apc.report_autofilter	Off	Off
apc.shm_segments	1	1
apc.shm_size	256	256
apc.slam_defense	0	0
apc.stat	On	On
apc.ttl	0	0
apc.user_entries_hint	100	100
apc.user_ttl	0	0
apc.write_lock	On	On

ctype
ctype functions 	enabled

gd
GD Support 	enabled
GD Version 	bundled (2.0.28 compatible)
FreeType Support 	enabled
FreeType Linkage 	with freetype
GIF Read Support 	enabled
GIF Create Support 	enabled
PNG Support 	enabled
WBMP Support 	enabled
XBM Support 	enabled

mbstring
Multibyte Support 	enabled
Japanese support 	enabled
Simplified chinese support 	enabled
Traditional chinese support 	enabled
Korean support 	enabled
Russian support 	enabled
Multibyte (japanese) regex support 	enabled

mbstring extension makes use of "streamable kanji code filter and converter", which is distributed under the GNU Lesser General Public License version 2.1.

Directive	Local Value	Master Value
mbstring.detect_order	no value	no value
mbstring.encoding_translation	Off	Off
mbstring.func_overload	0	0
mbstring.http_input	pass	pass
mbstring.http_output	pass	pass
mbstring.internal_encoding	no value	no value
mbstring.language	neutral	neutral
mbstring.substitute_character	no value	no value

mysql
MySQL Support	enabled
Active Persistent Links 	0
Active Links 	0
Client API version 	3.23.49
MYSQL_MODULE_TYPE 	builtin
MYSQL_SOCKET 	/tmp/mysql.sock
MYSQL_INCLUDE 	no value
MYSQL_LIBS 	no value

Directive	Local Value	Master Value
mysql.allow_persistent	On	On
mysql.connect_timeout	60	60
mysql.default_host	no value	no value
mysql.default_password	no value	no value
mysql.default_port	no value	no value
mysql.default_socket	no value	no value
mysql.default_user	no value	no value
mysql.max_links	Unlimited	Unlimited
mysql.max_persistent	Unlimited	Unlimited
mysql.trace_mode	Off	Off

overload
User-Space Object Overloading Support 	enabled

pcre
PCRE (Perl Compatible Regular Expressions) Support 	enabled
PCRE Library Version 	6.2 01-Aug-2005

posix
Revision 	$Revision: 1.51.2.4.2.1 $

session
Session Support 	enabled
Registered save handlers 	files user

Directive	Local Value	Master Value
session.auto_start	Off	Off
session.bug_compat_42	Off	Off
session.bug_compat_warn	On	On
session.cache_expire	180	180
session.cache_limiter	nocache	nocache
session.cookie_domain	no value	no value
session.cookie_lifetime	0	0
session.cookie_path	/	/
session.cookie_secure	Off	Off
session.entropy_file	no value	no value
session.entropy_length	0	0
session.gc_divisor	1000	1000
session.gc_maxlifetime	1440	1440
session.gc_probability	1	1
session.name	PHPSESSID	PHPSESSID
session.referer_check	no value	no value
session.save_handler	files	files
session.save_path	/tmp	/tmp
session.serialize_handler	php	php
session.use_cookies	On	On
session.use_only_cookies	Off	Off
session.use_trans_sid	Off	Off

standard
Regex Library 	Bundled library enabled
Dynamic Library Support 	enabled
Path to sendmail 	/usr/sbin/sendmail -t -i

Directive	Local Value	Master Value
assert.active	1	1
assert.bail	0	0
assert.callback	no value	no value
assert.quiet_eval	0	0
assert.warning	1	1
auto_detect_line_endings	0	0
default_socket_timeout	400	400
safe_mode_allowed_env_vars	PHP_	PHP_
safe_mode_protected_env_vars	LD_LIBRARY_PATH	LD_LIBRARY_PATH
url_rewriter.tags	a=href,area=href,frame=src,input=src,form=fakeentry	a=href,area=href,frame=src,input=src,form=fakeentry
user_agent	no value	no value

tokenizer
Tokenizer Support 	enabled

xml
XML Support 	active
XML Namespace Support 	active
EXPAT Version 	1.95.6

zlib
ZLib Support 	enabled
Compiled Version 	1.1.4
Linked Version 	1.1.4

Directive	Local Value	Master Value
zlib.output_compression	Off	Off
zlib.output_compression_level	-1	-1
zlib.output_handler	no value	no value

Additional Modules
Module Name

Environment
Variable	Value
HOSTNAME 	calisto.tcn.net
SHELL 	/bin/bash
TERM 	vt100
HISTSIZE 	1000
SSH_CLIENT 	199.166.4.187 1919 22
SSH_TTY 	/dev/pts/0
USER 	root
LS_COLORS 	no=00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:bd=40;33;01:cd=40;33;01:or=01;05;37;41:mi=01;05;37;41:ex=01;32:*.cmd=01;32:*.exe=01;32:*.com=01;32:*.btm=01;32:*.bat=01;32:*.sh=01;32:*.csh=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.gz=01;31:*.bz2=01;31:*.bz=01;31:*.tz=01;31:*.rpm=01;31:*.cpio=01;31:*.jpg=01;35:*.gif=01;35:*.bmp=01;35:*.xbm=01;35:*.xpm=01;35:*.png=01;35:*.tif=01;35:
USERNAME 	root
PATH 	/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/bin
MAIL 	/var/spool/mail/root
PWD 	/usr/local/apache_1.3.29/bin
INPUTRC 	/etc/inputrc
LANG 	en_US.UTF-8
LAMHELPFILE 	/etc/lam/lam-helpfile
SSH_ASKPASS 	/usr/libexec/openssh/gnome-ssh-askpass
HOME 	/root
SHLVL 	2
BASH_ENV 	/root/.bashrc
LOGNAME 	root
SSH_CONNECTION 	199.166.4.187 1919 199.166.4.190 22
LESSOPEN 	|/usr/bin/lesspipe.sh %s
G_BROKEN_FILENAMES 	1
_ 	/usr/local/apache_1.3.29/bin/httpd

PHP Variables
Variable	Value
_REQUEST["eZSESSIDcorporate_site"]	f737fb2abdb17745c5e83765fa40a7a8
_REQUEST["eZSESSIDcorporate_site_french"]	5ab0430de0176d0278c90221cc1d0275
_REQUEST["eZSESSIDcorporate_site_admin"]	e2855687f33ca73c5e7610f4f24dab67
_REQUEST["ezcst_unfolded_node_list"]	n2
_COOKIE["eZSESSIDcorporate_site"]	f737fb2abdb17745c5e83765fa40a7a8
_COOKIE["eZSESSIDcorporate_site_french"]	5ab0430de0176d0278c90221cc1d0275
_COOKIE["eZSESSIDcorporate_site_admin"]	e2855687f33ca73c5e7610f4f24dab67
_COOKIE["ezcst_unfolded_node_list"]	n2
_SERVER["DOCUMENT_ROOT"]	/usr/www/patonpublishing/docs/
_SERVER["HTTP_ACCEPT"]	text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
_SERVER["HTTP_ACCEPT_CHARSET"]	ISO-8859-1,utf-8;q=0.7,*;q=0.7
_SERVER["HTTP_ACCEPT_ENCODING"]	gzip,deflate
_SERVER["HTTP_ACCEPT_LANGUAGE"]	en-us,en;q=0.5
_SERVER["HTTP_CONNECTION"]	keep-alive
_SERVER["HTTP_COOKIE"]	eZSESSIDcorporate_site=f737fb2abdb17745c5e83765fa40a7a8; eZSESSIDcorporate_site_french=5ab0430de0176d0278c90221cc1d0275; eZSESSIDcorporate_site_admin=e2855687f33ca73c5e7610f4f24dab67; ezcst_unfolded_node_list=n2
_SERVER["HTTP_HOST"]	www.popmagazine.com
_SERVER["HTTP_KEEP_ALIVE"]	300
_SERVER["HTTP_USER_AGENT"]	Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.7) Gecko/20060909 Firefox/1.5.0.7
_SERVER["PATH"]	/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/bin
_SERVER["REMOTE_ADDR"]	207.112.65.134
_SERVER["REMOTE_PORT"]	3435
_SERVER["SCRIPT_FILENAME"]	/usr/www/patonpublishing/docs/test.php
_SERVER["SERVER_ADDR"]	199.166.4.188
_SERVER["SERVER_ADMIN"]	[email protected]
_SERVER["SERVER_NAME"]	www.lepopprof.ca
_SERVER["SERVER_PORT"]	80
_SERVER["SERVER_SIGNATURE"]	<ADDRESS>Apache/1.3.29 Server at www.lepopprof.ca Port 80</ADDRESS>
_SERVER["SERVER_SOFTWARE"]	Apache/1.3.29 (Unix) PHP/4.4.2
_SERVER["GATEWAY_INTERFACE"]	CGI/1.1
_SERVER["SERVER_PROTOCOL"]	HTTP/1.1
_SERVER["REQUEST_METHOD"]	GET
_SERVER["QUERY_STRING"]	no value
_SERVER["REQUEST_URI"]	/test.php
_SERVER["SCRIPT_NAME"]	/test.php
_SERVER["PATH_TRANSLATED"]	/usr/www/patonpublishing/docs/test.php
_SERVER["PHP_SELF"]	/test.php

Claudia Kosny

Thursday 02 November 2006 11:54:51 am

Hi John

I can't see the memory_limit in your phpinfo. So please make sure that this is high enough. On a dedicated server you certainly can spare 64MB or hopefully more for PHP (the default is 8MB wich is often not enough for EZ).

Also check out the tips and tricks here:
http://ez.no/community/forum/setup_design/improving_ez_publish_environment_and_performance

And check your cache settings - you can improve the speed quite considerably there. Especiallly make sure that the translation cache is enabled.

Also enable full debug output and check the timing points there - anything obvious?

The messages in the warning.log are exactly because the translation.ts is not complete. Somewhere in the templates i18n is called for a certain text and there is no translation in the translation.ts. This should not cause such big problems however so I am not sure what could cause the problem with the translation.ts.
Does the general translation work fine? If not, check the tips in the forum first so speed up your EZ as much possible before worrying about extensions. If yes maybe replace your custom translation.ts in the extension with the one that is provided by ez. If this works now your custom translation.ts seems to be faulty so check that.

Good luck

Claudia

John Champaign

Thursday 02 November 2006 12:42:45 pm

Will try those suggestions, thanks! :-)

John

Damien Pobel

Friday 03 November 2006 1:09:39 am

You can also try to install the PHP domxml module which should accelerate the generation of translation cache as translation file use XML documents.

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