Solved

Multiuser network response time is very slow

Posted on 2008-10-28
3
1,341 Views
Last Modified: 2012-05-05
My application accesses .dbf's by a path to a mapped drive on the server. Each user has the map on their desktop machine.

As soon as the second user opens the applications the repsonse time for all users goes from 1-2 seconds to 40 seconds or more.

The application is trying to fill in a datagrid from the records comming back from the server.

I am using .dbf's with properly indexed files to do the access. ie:
use table.dbf
set index to aindex.idx
Then I use a do loop to skip trough the table untill the criteria for the selection is no longer met.

I do not lock or need to lock any records as this is read only.

Are there settings in mutilock... cursorproperties... anything that can help with this?

Thanks, Steve R.
0
Comment
Question by:SRabidou
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
3 Comments
 
LVL 29

Expert Comment

by:Olaf Doschke
ID: 22823039
The first bad thing is you use IDX indexes, CDX indexes are shorter (compact) and you can use many tags in one CDX file which is automatically used. looping through a dbf, even when it's in order by an index is slow. The real proper use of indexes for performance is using them for seeking or rushmore optimazation of where clauses, you use them for ordering purposes only. This makes a table scan even slower than scanning in physical record order. Use SQL Select to retrieve the data fulfilling the "criteria for the selection". Use a View if that data should be updatable.

Bye, Olaf.
0
 
LVL 33

Expert Comment

by:CarlWarner
ID: 22823397
There are lots of ways to tweak for performance.  The use of CDX index file types is preferred and used by all Fox developers I know of.

Also, you may want to consider trying to open the table differently since you are saying it is for read only access anyway.  Try using the NOUPDATE clause when you open that table.

Instead of :
use table.dbf
try:
use table.dbf  NOUPDATE

USE Command
http://msdn.microsoft.com/en-us/library/5e8201te(VS.80).aspx
0
 
LVL 33

Accepted Solution

by:
CarlWarner earned 500 total points
ID: 22826690
How To Optimize FoxPro Performance on a Network
http://support.microsoft.com/kb/102786/en-us
0

Featured Post

VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Most of the applications these days are on Cloud. Cloud is ubiquitous with many service providers in the market. Since it has many benefits such as cost reduction, software updates, remote access, disaster recovery and much more.
This article explains the fundamentals of industrial networking which ultimately is the backbone network which is providing communications for process devices like robots and other not so interesting stuff.
After creating this article (http://www.experts-exchange.com/articles/23699/Setup-Mikrotik-routers-with-OSPF.html), I decided to make a video (no audio) to show you how to configure the routers and run some trace routes and pings between the 7 sites…
If you're a developer or IT admin, you’re probably tasked with managing multiple websites, servers, applications, and levels of security on a daily basis. While this can be extremely time consuming, it can also be frustrating when systems aren't wor…
Suggested Courses
Course of the Month2 days, 18 hours left to enroll

621 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question