Martin v. Loewis
martin at v.loewis.de
Fri Oct 18 22:06:05 CEST 2002
johnfkeeling at yahoo.com (John Keeling) writes:
> It is true that a single CORBA server can be restricted to a single
> Most CORBA systems use multiple servers ... e.g. Naming Server &
> multiple business servers, and hence require multiple ports.
> From my experience, it would be unusual (but possible) to implement
> all remote services into one single CORBA server. More common is to
> use a proxy to put IIOP traffic through for the multiple servers. As
> before, these proxies have not always been available as the CORBA spec
> has evolved.
> Martin, maybe you know a better way to approach this?
It depends on how you design your service. If you want to use CORBA to
do what you are doing with SOAP/XML-RPC (just easier and faster), you
would normally not expose the naming service to your eventual clients.
Instead, you would use either a fixed object reference for all
clients, or some easily-computed object reference to distinguish
clients (like a session key). You could also place the current IOR on
the web server and have clients do an http download of the current
IOR. In all these cases, you don't need a name service.
You might find that you also don't need distributed (to various
machines) objects on the server side for a service accessible in a
WAN. Instead, you expose only a single object reference, and have the
implementation delegate to the calls to the various individual objects
if you need those.
With that, you can use a single host/port combination per
service. This improves the security on the firewall, as it restores
the traditional TCP/Unix convention of one-port-is-one-service: the
firewall administrator can now readily block individual services,
perhaps distinguishing legitimit users from illegitime ones.
More information about the Python-list