VFP COM Slow down in IIS

We have a Windows 2003 Server SP1 or SP2 web server running IIS6.0. The data for the system is in Visual FoxPro tables and also running a VFP COM dll. Since about June 15th the system has come to a crawl.  When IIS is reset it works fine for a few minutes and then the memoey in thw w2wp process is beyong 500MB and the system then crawls. Any help...we are willing to pay for help and have someone come fix it for us...critical need.
Who is Participating?
I am not sure what the real answer is to your specific problem.

One odd issue using VFP on a Server with multi-processors or hyper-threaded processor has come up where VFP should be set to use only one processor.  I have not yet personally come across this.  But, here is a free utility that others seem to believe worked for them.

RunFirst - Version 1.1.2
CaptainCyrilFounder, Software Engineer, Data ScientistCommented:
From my experience about VFP slowdown to do these issues:

VFP COM and ASP on same machine slows down IIS. Use protected memory.
Make sure VFP releases all objects before closing.
Make sure VFP DLL is being released properly when used. Check Task Manager
Make sure VFP DLL is properly built single/multi threading and instancing.
Cloud Class® Course: MCSA MCSE Windows Server 2012

This course teaches how to install and configure Windows Server 2012 R2.  It is the first step on your path to becoming a Microsoft Certified Solutions Expert (MCSE).

I failed to point out that the single processor fix was more for older Fox apps, some freezing within the newer Windows versions.  Obviously, if your COM stuff is choking out available memory over time, the whole system should logically slow down with shrinking resources available.
Which version of VFP are you using?  And are you using the latest Service Pack for the version?

I ask that only because there are fixes in Service Pack 1 to VFP9 (SP2 should be out within the next two months) that address COM leaking memory issues that would surely degrade performance after running over time.


List of bugs that are fixed in Microsoft Visual FoxPro 9.0 Service Pack 1

Under the Runtime and COM subsection, one fix reads:

Memory leak with IMPLEMENTS in COM servers.

Regardless of the applicability of just that one fix, if you aren't using the very latest version of VFP and its Service Packs, you may be working with less than optimal COM support that can leak memory on the server in some circumstances.
bmlewisAuthor Commented:
CarlWerner, we are upgrading the app to VFP9 from 7.  If that helps, I'll award you the points.  I appreciate your interest in helping me resolve the issue.
I'm not sure that helps.  :)

Is it slow under just VFP7 or now that it's VFP9, it's slow OR both are slow?
Take care about COM applications and IIS.
If you work with huge tables, and do a bad SQL query, you will show your task manager how the resources will go down, because VFP create temporal files to give you the result. Test it in VFP before going in producton.
Things that help:
- Create your DLL as multi-theared
- Use the component administrator to allow Windows to create more instances of your DLL to give results. This helps when you have a lot of simultaneous calls to your app.
- Remember DLL also use FOXPROWCFG (see VFP help). Add in your config.fpw the parameter: PROGCACHE=0
- Check your server environtment. Have you enought ram? Windows may be using disk cache if you have low RAM memory.
- Remember to install the SP2 with VFP9 following the readme instructions of the SP2.
And what about garbage collection - SYS(1104)? Very important in COM servers.

BTW, do you think author is still waiting for answer?
bmlewisAuthor Commented:
I probably should have closed this down 2 years ago, but yes, I'm still waiting for an answer and the problem is worse than ever.  Thanks for the input from both of you.  I'll check out some of those suggestions and respond as soon as I can.
look for the size of log archives in IIS
bmlewisAuthor Commented:
After speaking with a VFP expert, I believe that the way the system is current set up is simply fundamentally flawed.  I awarded points to the experts who appeared to be steering me towards that conclusion.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.