ODAC Performance over MAN

Discussion of open issues, suggestions and bugs regarding ODAC (Oracle Data Access Components) for Delphi, C++Builder, Lazarus (and FPC)
Post Reply
amoroder
Posts: 30
Joined: Sun 12 Sep 2010 11:33

ODAC Performance over MAN

Post by amoroder » Thu 12 Oct 2017 06:28

Hello,

we transferred our server to another site connected via 1 Gbit MAN. Our application now is very slow, because of the latency that is now ca 1.2 ms per Packet , compared to the 0.2 ms it was in the LAN.
I started wireshark and discovered that this 3 lines of code

qrQuery.sql.Text :='select 1 from dual';
qrQuery.Active := True;
qrQuery.Active := False;

generate 11 packets in total ( to the server and back )

Is it possible to change some parameter in the connection to pool the OCI calls in less packets?
This would reduce the latency.

Thanks
Andreas

amoroder
Posts: 30
Joined: Sun 12 Sep 2010 11:33

Re: ODAC Performance over MAN

Post by amoroder » Mon 23 Oct 2017 07:04

Hello,

could TCP.NODELAY=false help?
Is there a way to set this in direct mode?

Thanks
Andreas

MaximG
Devart Team
Posts: 1822
Joined: Mon 06 Jul 2015 11:34

Re: ODAC Performance over MAN

Post by MaximG » Mon 23 Oct 2017 12:58

We are constantly working on our products improvement, including speed issues. In fact, after the provided query is executed, several packages appear. However, among them there are none, without which it is possible to obtain the result requested in this case. Please explain how you think you can reduce the number of packages between the client and the server in this case. Currently, we do not provide the ability to work with the TCP.NODELAY option when using the Direct Mode. We will consider the possibility of implementing such support in one of the future product versions.

amoroder
Posts: 30
Joined: Sun 12 Sep 2010 11:33

Re: ODAC Performance over MAN

Post by amoroder » Fri 27 Oct 2017 12:35

Hello Maxim,

thank you for your answer and also for you very good product.
Bye
Andreas

Post Reply