Re: IPC vs TCP

  • From: "Cary Millsap" <cary.millsap@xxxxxxxxxxxx>
  • To: jkstill@xxxxxxxxx
  • Date: Wed, 23 Apr 2008 18:39:30 -0500

Jeff and I saw about a 55:1 response time improvement on a little PL/SQL
block that executed a few hundred thousand dbcalls in 2001 (this is the
first case study in the Optimizing Oracle Performance book). We ran once
connected to an alias with protocol=tcp, and then again using a different
alias with protocol=beq. Then we ran test 1 again, then test 2 again, to
eliminate the possibility that the performance improvement was just an
artifact of db block buffer caching.

I don't have the repro case for the test we did, but it was something like a
select of one row from a real table executed over and over again. It
repeatedly ran about a minute through TCP and about a second through BEQ.

Cary Millsap


On Wed, Apr 23, 2008 at 3:50 PM, Jared Still <jkstill@xxxxxxxxx> wrote:

> Env:
>
> Linux 2.6. on Intel
> Oracle 10.2.0.3
>
> In the past I have been led to believe (without much proof) that when
> connecting
> to a database on the local server, that IPC should always be used to avoid
> the
> performance hit of going through the TCP stack.
>
> Using a modified version of Tom Kyte's run_stats that allows for
> collecting
> stats from two different sessions, some minimal testing seems to indicate
> there is little difference whether connecting via IPC or TCP.
>
> Of course you are probably asking:
> "If you are on the server, why setup either?"
>
> The answer is because many applications always connect through TNS.
>
> In any case, I don't see much difference regardless of how the connection
> is made
> while on the server.
>
> Has anyone here done any testing on this?
>
> Or perhaps it is something that changed in a release?
>
> Thanks,
>
> --
> Jared Still
> Certifiable Oracle DBA and Part Time Perl Evangelist
>

Other related posts: