phpgroupware-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Phpgroupware-users] PHPGW is Dang Slow


From: Hsing-Foo Wang
Subject: Re: [Phpgroupware-users] PHPGW is Dang Slow
Date: Wed, 16 Jul 2003 11:49:47 +0200
User-agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.5a) Gecko/20030701 Thunderbird/0.1a

Hi Tomasz,

What exactly did you do, I mean looking at the tables what type of field did you altered into whta type?

Can you give an exact example of 1 of the tables in phpwg

Thx
Hsing-Foo

Tomasz Spyrczak wrote:

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi there


Can anybody help??


Once I had some serious performance problem on my phpGW production
system. So I measured execution time of various functions in
phpgw-api and some apps. Conclusion: it was not the phpGW code that
was slow - actually it was pretty f'ing fast - it was the damned
database that was so painfully slow at times.

So I chcecked what was going on with the database, and I found that
it was those (surprise! surprise!) VARIABLE LENGTH TEXT FIELDS that
were messing things around. Then I changed the database structure - I
replaced all variable length text field with fixed length. And....

Bingo! Now everything is so blindly fast it is almost not true ;-)
Anyway the long login time mentioned somewhere here is no more - for
example execution time of 'header.inc.php' was cut 10-fold - from 2
secods to 0.2 second.

Anyway a system that was almost unusable due to extremely long
execution times is now quite a real-time system - everything is done
just when a user clicks a link or a button. No lags anymore :-)

Look for suspects in setup/inc/class.schema_proc_??sql.inc.php, like
"rTranslateType" function. Is it just me or is there really a code
that translates all varchar fields 256 chars long or longer to
variable length text fields? Bad, bad idea from the database
performance standpoint imho.

Additionally a compiled code cache like "Another PHP Cache" is quite
usefull here - it can cut exec. time as much as 30%. And don't forget
to properly maintain the database itself - for example "vacuum" it
sometimes (everyday from a cron job is a good idea)

Ah, and here are hardware specs of my system: dedicated server,
Athlon 1GHz, 128MB, Red Hat 7.3 (or something like that) stripped to
the bones - just Apache, PostgreSQL, OpenSSL, SSH.

Best regards
Tomasz Spyrczak
address@hidden

-----BEGIN PGP SIGNATURE-----
Version: PGPfreeware 6.5.8 for non-commercial use <http://www.pgp.com>

iQA/AwUBPxUIosbMsgKq/FYXEQKTzACfceNJz1CJx4kLAuIOoNY0hE0jmwgAnArZ
uqaxRm5HUiRvyzgvLxkUKPuL
=RE9q
-----END PGP SIGNATURE-----



_______________________________________________
Phpgroupware-users mailing list
address@hidden
http://mail.gnu.org/mailman/listinfo/phpgroupware-users





reply via email to

[Prev in Thread] Current Thread [Next in Thread]