Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
VFP App over a WAN
Message
 
To
06/06/1998 01:24:33
General information
Forum:
Visual FoxPro
Category:
Client/server
Miscellaneous
Thread ID:
00105475
Message ID:
00105493
Views:
36
>I am currently exploring ways to WAN enable a VFP application that is currently under development.
>
>After experimenting with a VPN over a 56K frame, I have demonstrated that VFP uses "wiser" data access methods by directly opening the tables than it ever will using ODBC and remote views. For example, even if I have it set to fetch as needed and retrieve in background with a fetch size of 20 records, all 40,000 records are actually passed over the data connection BEFORE control returns to VFP. Now, at this time the cursor only has 20 records in it, and true, it loads data 20 records at a time as I scroll down a browse, but all the data has actually already been passed over the connection.

The reason you get all the records from the VFP ODBC driver is that when you limit the number of records returned, the datbase server (in this case it's VFP, not a real database server) runs the full query but only returns n records at a time to the client. The problem here is that the VFP ODBC driver is really just a limited version of VFP and it runs on the client. This means that it does the full query, pulling all the records over the wire, then feeds n records at a time to your client. This is really pretty pointless.

>Questions:
>
>1) Is it a valid assumption that a 1.5mb line (T1) would be about 6-7 times slower than the 10BaseT LAN (discounting latency)?

Probably, it really depends on network traffic and on how "network-intensive" your application is. You can count on it being a lot slower, though.

>2) Does anyone know of any successfull implementations of three-tier solutions with an accent on limiting data throughput over the network?

Actually, this is the goal of all two and three tier applications. I know of many successful implementation. Generally, you want to force the user to search for a limited number of records at a time and return only those records over the wire.

>3) Does anyone have ANY suggestions as to implementations, approaches, etc that I should pursue.

You may want to start with the book "The Pros Talk Fox" which has a section on developing client/server applications with VFP by Robert Green.

>4) Do SQL Server ODBC drivers actually work "as expected" with remote views (unlike the VFP ODBC driver)? I am willing to consider putting the data store into SQL Server for an "enterprise" edition of the app if necessary (read "aarrrrgghhh").

Yup. I would highly recommend using SQL Server or some other database server as your back end. Because queries in true server databases execute on the server, only data returned to your client come back over the wire. None of the indexes come over and, if you ask for 20 records at a time, that's what comes over the wire. Keep in mind though that the server will execute the query in full before it starts sending any records back to the client. So it's usually not such a good idea to run a query that returns 40,000 rows.

If you can wait until late this year or early next, use SQL Server 7. It's faster, can run on Windows '95 and is much easier to administer than version 6.5. If you can't wait, you may want to look into SYBASE SQLAnywhere. It's cheaper and easier to use and may be plenty powerful enough for your application.

A three-tier approach would probably be best. This is a pretty new area, though. I know there are several books out there, but I haven't read any yet so I can't recommend one.

>A web interface is not really an option due to the complexity of the data involved. It would REALLY SUCK under this implementation.
>
>I am interested in referrals to reading material, technical papers, new ideas, and perhaps best of all, a three-tier framework if one exists.
>
>Thanks very much in advance,
Previous
Reply
Map
View

Click here to load this message in the networking platform