[ic] Most Common Performance Issues

Michael Stearne interchange-users@icdevgroup.org
Fri Aug 23 12:41:00 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