[ic] Most Common Performance Issues

Michael Stearne interchange-users@icdevgroup.org
Mon Aug 26 12:18:14 2002


Dan Browning wrote:

 > At 06:32 PM 8/22/2002 -0400, you wrote:
 >
 >> Our site is running IC on a DP 800Mhz Redhat box with 512MB of RAM
 >> with SCSI disk.  This machine runs only IC.  The site is based off of
 >> the foundation sample site and contains about 300 product using the
 >> standard (non-RDBMS) database.  We have seen decreasing performance
 >> over the last 6 months the site has been up.  There is up to 4 IC
 >> processes running at a time because of traffic.  Each page on the
 >> site takes from 2-10 secs to generate.  This is across all platforms
 >> and browsers at LAN speed. If an IC process has the machine to itself
 >> (only 1 user on the site), that process will take 97% of the CPU.
 >> While this is understandable, even when there is 1 process, it still
 >> takes ~4 seconds to generate a page.  I don't know how a machine as
 >> powerful can get floored by 4 concurrent users.
 >>
 >> Currently we run expireall each day.  This seems to help a little.
 >>
 >> What else could I do (configuration, cron, etc) to work on performance?
 >>
 >> Thanks,
 >> Michael
 >
 >
 > Try going to rpc mode, if you haven't already (see interchange.cfg),
 > this is equivalent to Apache PreFork mode.

This seems to help a little bit ab:
bash-2.04$ /usr/sbin/ab http://www.feamerch.com/cgi-bin/fea/index.html
This is ApacheBench, Version 1.3d <$Revision: 1.58 $> apache-1.3
Copyright (c) 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Copyright (c) 1998-2001 The Apache Group, http://www.apache.org/

Benchmarking www.feamerch.com (be patient).....done
Server Software:        Apache/1.3.22
Server Hostname:        www.feamerch.com
Server Port:            80

Document Path:          /cgi-bin/fea/index.html
Document Length:        123286 bytes

Concurrency Level:      1
Time taken for tests:   22.866 seconds
Complete requests:      1
Failed requests:        0
Broken pipe errors:     0
Total transferred:      123699 bytes
HTML transferred:       123286 bytes
Requests per second:    0.04 [#/sec] (mean)
Time per request:       22866.00 [ms] (mean)
Time per request:       22866.00 [ms] (mean, across all concurrent requests)
Transfer rate:          5.41 [Kbytes/sec] received

The transfer rate has doubled.

 >
 > However, moving to SQL isn't very difficult (Variable MYSQL 1 and
 > Variable SQLDSN ...) and it brings a lot of benefits, namely speed.

I will have to try this. I'll look at the docs to see what I need to do.

 >
 > I'll see if I can add these tips and others to the Performance FAQ
 > (which I'm sure you've seen):
 >
 > http://www.icdevgroup.org/cgi-bin/ic/docfly.html?mv_arg=icfaq11.00

I have looked at it.

Thanks,
Michael