Archived

This forum has been archived. Please start a new discussion on GitHub.

How to do service discovery within iceboxnet.exe?

Hi,

If I have 2 servers running within iceboxnet.exe, is there a method for one service to obtain a list of all of the endpoints running within that iceboxnet.exe, so it can obtain the port number of other services?

This is necessary because I need to run 3rd server which communicates with the two existing servers, and I'd rather not scatter hard coded ports through all of my projects.

I know I could use icegridregistry - would this perhaps be a better solution?

I'd like to use icegrid, but unfortunately there is no screencast for the icegrid Java GUI, and the documentation is missing, so I don't think I could follow that learning curve without a lot of work attempting to hand code .xml files (what are the chances of creating a screencast for the Java GUI?).

Comments

  • bernard
    bernard Jupiter, FL
    Hi Shane,

    Neither Ice nor IceBox provides an API to retrieve the object adapters in a communicator (or process), or their associated endpoints.

    The following could work for you:
    - use a shared communicator for all 3 services
    See "Sharing a Communicator" in http://www.zeroc.com/doc/Ice-3.4.1-IceTouch/manual/IceBox.44.3.html

    - create one of more Ice properties with stringified proxies for objects hosted by your IceBox services

    An additional advantage of this approach is that communications between your services could be transparently optimized by Ice: see http://www.zeroc.com/doc/Ice-3.4.1-IceTouch/manual/Adv_server.33.21.html

    Using IceGrid is another solution, although this could be overkill if all you need is exchange proxies between services hosted by the same IceBox server.
    Gravitas wrote: »
    Hi,
    I'd like to use icegrid, but unfortunately there is no screencast for the icegrid Java GUI, and the documentation is missing, so I don't think I could follow that learning curve without a lot of work attempting to hand code .xml files (what are the chances of creating a screencast for the Java GUI?).

    The IceGrid GUI includes a detailed online help. If for some reason this online help does not open in your environment, you can also find it here: http://www.zeroc.com/doc/Ice-3.4.1-IceTouch/IceGridAdmin/

    Best regards,
    Bernard