Troubleshooting performance problems can be a difficult process, because of the many factors that can be contributing to the slowdown.
In order to be of any help, we will need some additional information:
1. How long is your script running? You determine that by adding the following code:
In FW_ENTER.PRG:
PUBLIC RequestStartTime
M.RequestStartTime = SECONDS()
In FW_EXIT.PRG:
Response.Write("Elapsed time: " + STR(SECONDS() - M.RequestStartTime))
If your script is such that you cannot append content to the end of the existing output, then you can simply write the elapsed time value to a file or table.
2. Is buffering enabled? FoxWeb consumes more resources if buffering is on and you make too many calls to Response.Write, or if you are processing an FWX file with long HTML code blocks. A useful technique is to keep buffering set to off and place calls to Response.Flush in strategic places in your code.
3. How much content is returned by your script? Do you experience the same CPU load when you call scripts that return less content?
4. You mention that the CPU load jumps to 30-40%, but you did not specify which process is causing this load. You can determine this by examining the Processes tab of the Windows Task Manager, while the request is running.
5. You compared the CPU load of your 2.11 server with than on another server, running FoxWeb 1.29. It would be interesting to load FoxWeb 1.29 on your new server so that you can determine whether the discrepancy is caused by FoxWeb, or other factors.
6. Do you get the same performance problem when you call your script from a browser on a computer other than your server?
FoxWeb Support Team support@foxweb.com email |
Sent by John Castano on 02/06/2003 12:42:25 PM:
Ive setup a new Windows 2000 Server w/ IIS5 using FoxWeb 2.11, This is an upgrade from NT4 servers running Foxweb 1.29 (although the new server is a clean installation of the OS and all applications.)
I am currently experiencing unacceptable server performance and would like to know if anybody has experienced the problems Im having.
As soon as the foxweb.exe file channel goes from waiting to busy (a single request), the cpu load jumps to a constant 30-40% until the channel is done delivering the web-content to the requesting browser.
My other servers running Foxweb 1.29 & NT4, processor usage idles at about 15% with occasional spikes to 25-30%
Im very good w/ IIS5, and have tweaked the OS and the IIS webserver tremendously.... But im having a problem getting the new platform's performance to an acceptable level.