RPC performance problem

RPC performance problem

Post by Julie » Thu, 08 Jan 1998 04:00:00



Hi there!

I am a newbie in RPCs and have the following performance problem with them :

I created a test RPC server whose only purpose is to accept a buffer and to return the same buffer as output (This server demonstrates dynamic allocation by allocating the output buffer at the client-stub). The RPC server uses a fixed endpoint address, therefore clients must get a binding handle to the server before making the remote call.

I tested this server with many concurrent clients. Everything works fine until the number of concurrent clients exceeds 64 : when 65 or more clients are launched, some clients receive the exception "Invalid binding Handle".

Remarks:
* The 65 or more clients run multithreaded and therefore share the same binding handle : is there a limit on the sharing of binding handles by clients ?

* I positioned the concurrency limits high enough in the server so that 65 is well below the limit.

* The errors occur whatever the protocol used (local RPC, TCP/IP). BTW What are actually local RPCs and how are they implemented ?

* I presume that using static endpoints makes the remote call faster than with dynamic endpoints, since there's no overhead for resolving the server address, is that true ?

Any help is appreciated,
Thanks,
Julien

 
 
 

RPC performance problem

Post by Felix Kasza [MV » Thu, 08 Jan 1998 04:00:00


Julien,

 > * The 65 or more clients run multithreaded and therefore
 > share the same binding handle

Give each client its own handle. Concurrent calls over the same handle
are (a) not allowed and (b) synchronized by the RPC run-time. My guess
is also that this is where the 64 limit comes from (either a
semaphore, or the object count limit for the Wait*() functions).

 > I presume that using static endpoints makes the remote
 > call faster than with dynamic endpoints

Yes and no. The initial resolving of a binding handle is unnecessary
with static endpoints, but once that is done, no overhead. I'd go for
dynamic endpoints unless you are restricted by a firewall etc.

Cheers,
Felix.

--
If you post a reply, kindly refrain from emailing it, too.
I have killfiled hotmail.com and yahoo.com. If you are legit,
come forth and be recognized -- with a *real* email address.

 
 
 

1. Win2000 RPC and HP-UX DCE RPC problem

Hi there,

have to do some rpc-stuff in a mixed environment (hpux server / win2k
client).
I started with the interop sample from MS-Platform SDK. Works fine on win2k.

Ported to hpux, works fine on one hpux-machine(local client/local server),
it works on 2 different hpux's, but doesn't work in any configuration MS/UX
or UX/MS.
MS-Client says: rpc failed, error 1727.

Maybe there is some setup problem with dced on hpux (no experience in that
area).
Any hint (book / working solution / sample) very much appreciated.

Michael

2. searching in xemacs

3. Network performance using RPC

4. TCP/IP

5. RPC Performance : Named Pipes vs TCP/IP on Windows NT

6. Old A3000 upgrade for ROM 2.04 chips.

7. RPC performance (ncalrpc to Win32 Service)

8. Are Waveguides Obsolete?

9. Incompatability between MS RPC and DCE RPC

10. ? DCE RPC Client -> ONC RPC Server ?

11. Win32 RPC compatible with AIX RPC?

12. Is it possible to get an RPC client's network address in an RPC server?

13. RPC & DCOM95: RPC service is not available