In our experiments, it takes less than a 1/10th of a second to connect an application linked directly with the Easysoft ODBC-ODBC Bridge client on Linux to a data source on Windows over a 100Mb Ethernet link, where both machines are on the same LAN. The connection is a small fraction of a second slower for interpreted languages like Perl or if there is a Driver Manager (like unixODBC) between the application and the ODBC-ODBC Bridge client.
If you are experiencing connect times much slower than 1 second you should check the following:
Are the client and server machines on the same Local Area Network (LAN)?
Connection times can increase dramatically if they are not. Try pinging the server from the client and see what return times you get.
e.g.
ping www.easysoft.com PING easysoft.com (194.131.236.4): 56 data bytes 64 bytes from 194.131.236.4: icmp_seq=0 ttl=255 time=0.6 ms 64 bytes from 194.131.236.4: icmp_seq=1 ttl=255 time=0.1 ms
In this case, less than 0.6ms - quick. Machines not on the same LAN can show a much greater time and this will be reflected in your ODBC connect times.
Disable Reverse Lookups in the ODBC-ODBC Bridge Server. Performing a reverse lookup on an IP address can be quite slow, depending on how the machine is configured to perform the reverse lookup. You can do this from the ODBC-ODBC Bridge HTTP Server configuration screen. See the Configuration chapter in the ODBC-ODBC Bridge User Guide.
Check that you do not have any tracing turned on. There are multiple places tracing and logging may be turned on:
All of the above default to tracing off or require positive action to turn tracing on.
SQLSetConnectAttr(SQL_ATTR_TRACE, SQL_OPT_TRACE_ON)
.If after checking the above, you still want faster connections then try using persistent ODBC connections (e.g. odbc_pconnect
in PHP ) as these hold connections open for use by a ODBC connection call with the same DSN.