LOL

FYI - I shuffled everything around and it's working brilliantly with
the understanding of how pub/sub is actually being carried out. I'll
have to figure out what I want to do about the subscription business -
knowing that I received n responses for n subscribers. Using
ISubscriptionStorage it works great, however I agree it does feel a
bit dirty...

On Thu, Jan 29, 2009 at 11:58 AM, Ayende Rahien <[email protected]> wrote:
> Yes, you can.
> Buy BizTalk
>
> On Thu, Jan 29, 2009 at 2:48 PM, Matt Burton <[email protected]> wrote:
>>
>> Crap - that's too simple - can't we make it more complicated? :)
>>
>> Thanks for the clarification - most appreciated.
>>
>> On Thu, Jan 29, 2009 at 11:43 AM, Ayende Rahien <[email protected]> wrote:
>> > The way it works.
>> > P1 - publisher of Msg1
>> > S1 - S3 - Subscribers to Ms1
>> >
>> > S1 starts up, it sends an AddSubscription request to P1
>> > P1 publish a Msg1 msg. So it sends it to S1
>> > S2 starts up, it sends an AddSubscription request to P1
>> >
>> > P1 publish a Msg1 msg. So it sends it to S1,S2
>> >
>> > On Thu, Jan 29, 2009 at 2:39 PM, Matt Burton <[email protected]>
>> > wrote:
>> >>
>> >> Thanks for the responses - most appreciated. Yes - I know that what
>> >> I'm trying to do is pub/sub - I was referring to the term "load
>> >> balancer" as that appeared to be the mechanics around the store and
>> >> forward mechanism of publishing a message to multiple subscribers in
>> >> RSB. I guess I was wrong about that - but I'm a bit confused as to how
>> >> this is working then.
>> >>
>> >> When you say it should work out of the box - are you referring to
>> >> pub/sub? I'm guessing I have a fundamental misunderstanding of the
>> >> mechanics here. Process 1 publishes a message which process 2 is
>> >> subscribed to. Process 2 then publishes a new message which processes
>> >> A, B, and C are all subscribed to. The way I was thinking about it was
>> >> that the message would go into a queue and then something would pick
>> >> up the message and relay it to all the subscribers. Is that not how it
>> >> works? If not, and the subscribers are simply watching the queue of
>> >> the publisher, how does the publisher know when all the subscribers
>> >> have received the message and it can pull the message from the queue?
>> >>
>> >> Thanks for helping!
>> >> Matt
>> >>
>> >> On Thu, Jan 29, 2009 at 11:22 AM, Ayende Rahien <[email protected]>
>> >> wrote:
>> >> > inline
>> >> >
>> >> > On Thu, Jan 29, 2009 at 12:39 PM, Matt Burton <[email protected]>
>> >> > wrote:
>> >> >>
>> >> >> Follow-up question - I saw some activity around the load balancer in
>> >> >> SVN after my last message and dug into it and discovered the
>> >> >> LoadBalancerHost and it's accompanying
>> >> >> RemoteAppDomainLoadBalancerHost. I'm not using this for my load
>> >> >> balancer, yet it's still working - so I'm wondering what it is
>> >> >> exactly
>> >> >> that I've got going here... My workers are configured with load
>> >> >> balancer endpoints but I'm not sure how the messages are getting
>> >> >> sent
>> >> >> to the worker queues without the MsmqLoadBalancer in play. I've been
>> >> >> going through the RSB code but I'm not exactly sure of the flow at
>> >> >> this point.
>> >> >
>> >> > We have a problem of terminology.
>> >> > What you call load balancer I think about as pub/sub.
>> >> > What the load balancer in RSB is supposed to accomplish is to let you
>> >> > have
>> >> > several machines sharing the load of a single endpoint.
>> >> > Think about it like a hardware load balancer in front of a single
>> >> > URL.
>> >> >
>> >> >>
>> >> >> In any event - when I do try to use the LoadBalancerHost or the
>> >> >> remote
>> >> >> app domain loader it complains about the endpoint and threadCount
>> >> >> properties that it's dependent on. I saw in the unit tests how
>> >> >> you're
>> >> >> manually specifying these values when configuring the container, but
>> >> >> I
>> >> >> don't have hook to do this with the LoadBalancerHost as it doesn't
>> >> >> use
>> >> >> a bootstrapper to configure the host before starting it, even if you
>> >> >> specify one. I have the facility configuration in my config file,
>> >> >> obviously, but it's not picking it up for some reason:
>> >> >
>> >> > It is not done yet, unfortunately.
>> >> >
>> >> >>
>> >> >> public void Start()
>> >> >> {
>> >> >>    var container = new WindsorContainer(new XmlInterpreter());
>> >> >>    container.Kernel.AddFacility("rhino.esb", new
>> >> >> RhinoServiceBusFacility());
>> >> >>    container.AddComponent<MsmqLoadBalancer>();
>> >> >>
>> >> >>    loadBalancer = container.Resolve<MsmqLoadBalancer>();
>> >> >> }
>> >> >>
>> >> >> It blows up on the Resolve call. What am I missing?
>> >> >>
>> >> >> I'm assuming that if I can get this working that the new
>> >> >> KnownWorkers
>> >> >> public property on MsmqLoadBalancer would be the solution to my
>> >> >> question below, where I want to know the number of workers
>> >> >> participating in a load balanced scenario, correct?
>> >> >>
>> >> >> Thanks,
>> >> >> Matt
>> >> >>
>> >> >> On Wed, Jan 28, 2009 at 11:05 AM, Matt Burton
>> >> >> <[email protected]>
>> >> >> wrote:
>> >> >> > I have a scenario where I want to have multiple subscribers to a
>> >> >> > message such that when the message is published each picks it up
>> >> >> > and
>> >> >> > processes it independently. In terms of config I don't want to
>> >> >> > have
>> >> >> > the publisher know about each worker node, so I was able to get
>> >> >> > the
>> >> >> > load balancer concept running and it works just as I had hoped.
>> >> >> >
>> >> >> > Question - the scenario I'm proving out here is one where I'm
>> >> >> > provisioning software to machines, so that I receive a request to
>> >> >> > provision a new tenant and then I publish a message to create a
>> >> >> > new
>> >> >> > web site for that tenant on N machines. I want to be able to throw
>> >> >> > a
>> >> >> > new box into the mix and have it participate in the process
>> >> >> > automatically. It would be nice to know whether or not the
>> >> >> > provisioning of the web site was successful on each machine and
>> >> >> > base
>> >> >> > the completion of the saga on whether or not all boxes chimed in
>> >> >> > saying they were successful. In order to do that, however, I'd
>> >> >> > need
>> >> >> > to
>> >> >> > know how many servers were participating, something which looks
>> >> >> > like
>> >> >> > it would require some tinkering around with the actual
>> >> >> > subscription
>> >> >> > queues themselves to figure out.
>> >> >> >
>> >> >> > What would you advise in this scenario? Fire and forget for
>> >> >> > provisioning the sites - depend on an external solution to monitor
>> >> >> > errors? Or do I have the workers send back a thumbs up saying that
>> >> >> > they did their job and when all report back call it good? If so,
>> >> >> > what
>> >> >> > are my options for determining the number of subscribers in the
>> >> >> > load
>> >> >> > balanced scenario?
>> >> >> >
>> >> >> > Thanks,
>> >> >> > Matt
>> >> >> >
>> >> >>
>> >> >>
>> >> >
>> >> >
>> >> > >
>> >> >
>> >>
>> >>
>> >
>> >
>> > >
>> >
>>
>>
>
>
> >
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Rhino Tools Dev" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/rhino-tools-dev?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to