multicasting and distributed objects

  • Has anyone attempted to do multicasted distributed objects using
    NSSocketPort/NSPortCoder?  I realize that is doesn't make sense
    generally, but it does make sense for sending oneway messages to a
    singleton in a large number of clients.  I also realize that
    multicasting requires explicit treatment of dropped and mis-ordered
    messages...

    I have coded a prototype which uses NSArchiver, but this technique
    does not support NSInvocation or byref objects.

    Any insights will be greatly appreciated.

    dave
  • On Oct 9, 2007, at 11:43 , David Spooner wrote:

    >
    > Has anyone attempted to do multicasted distributed objects using
    > NSSocketPort/NSPortCoder?  I realize that is doesn't make sense
    > generally, but it does make sense for sending oneway messages to a
    > singleton in a large number of clients.  I also realize that
    > multicasting requires explicit treatment of dropped and mis-ordered
    > messages...
    >
    > I have coded a prototype which uses NSArchiver, but this technique
    > does not support NSInvocation or byref objects.
    >
    > Any insights will be greatly appreciated.

    Take a look at Avis:
    http://avis.sourceforge.net/

    Reliable multicasting is a notoriously expensive problem. Even if you
    send a one-way message, how do you know it was received and being
    processed over UDP multicast?

    What limitation does your prototype impose so that it can't handle
    NSInvocations?

    Cheers,
    M
  • On Tue, 9 Oct 2007 14:01:27 -0400, "A.M."
    <agentm...> wrote:

    > Take a look at Avis:
    > http://avis.sourceforge.net/

    Thank you.

    > Reliable multicasting is a notoriously expensive problem. Even if you
    > send a one-way message, how do you know it was received and being
    > processed over UDP multicast?

    The server which sends the messages doesn't care, but marks each
    message with an index so that clients can detect missed messages and
    request those messages be sent again...

    > What limitation does your prototype impose so that it can't handle
    > NSInvocations?

    I thought I had observed that NSInvocation does not respond to -
    encodeWithCoder:; I see now that that it does on 10.4.  That still
    leaves the problem of byref objects (which I don't currently need).

    At this point my interest is largely academic...

    dave
  • On Oct 9, 2007, at 15:57 , David Spooner wrote:

    >
    > On Tue, 9 Oct 2007 14:01:27 -0400, "A.M."
    > <agentm...> wrote:
    >
    >> Take a look at Avis:
    >> http://avis.sourceforge.net/
    >
    > Thank you.
    >
    >> Reliable multicasting is a notoriously expensive problem. Even if you
    >> send a one-way message, how do you know it was received and being
    >> processed over UDP multicast?
    >
    > The server which sends the messages doesn't care, but marks each
    > message with an index so that clients can detect missed messages
    > and request those messages be sent again...
    >
    >> What limitation does your prototype impose so that it can't handle
    >> NSInvocations?
    >
    > I thought I had observed that NSInvocation does not respond to -
    > encodeWithCoder:; I see now that that it does on 10.4.  That still
    > leaves the problem of byref objects (which I don't currently need).
    >
    > At this point my interest is largely academic...

    Do you mean "bycopy"?
    "Since passing by reference is the default behavior for the vast
    majority of Objective-C objects, you will rarely, if ever, make use
    of the byref keyword."
    http://developer.apple.com/documentation/Cocoa/Conceptual/ObjectiveC/
    Articles/chapter_5_section_6.html

    All that information is crammed into the method's signature. It has a
    bunch of private methods you may be interested in.

    Cheers,
    M
previous month october 2007 next month
MTWTFSS
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        
Go to today