I have a performance-problem using ZEOS-Lib 7.1.4-stable and Firebird 2.5. If Firebird runs on a separate server (not localhost) a simple select * from test_table to be displayed in e Delphi DBGrid needs about 30 seconds for olny 1000 records.
Doing the same job with an other component (UIB) needs lees than one second. Doing it on localhost with Zeos even need less than one second.
After I have seen the problem in my main application I have tested this with a simple test-program in Delphi that contains only:
- *a Datamodule with TZConnection and TZQuery
* a form with a TDBGrid and a TDatasource
Hostname: ip-Address of the server
Databasename: testdb (alias)
protocol firebird-2.5
sqlHourglass false
All other components uses the standard-settings, only TZQuery.SQL ist set to "select * from test_table".
The problem only occures if firebird runs on a separate maschine, running on the same maschine as the client works without any problem.
If used with a separate server over LAN (same with WLAN), I can see in a network-monitor that after sending the select to the server there was a data-transfer with only 800kByte/s for a time of about 30 seconds. During this time server-CPU has a usage of about 1-3%. Copying some large files or many small files over the same network runs with a speed of more than 15MByte/s, so LAN-performance may be OK.
Is there anything I can have done wrong with Zeos? It seems quite simple and most other things are working very good with Zeos so I don't want to change to an other component.
Any tip to get this to a good performance?
Many thanks...
Is there any