Hi Sidath, Does consumers and/or producers needs to additionally call this services periodically to do this or will it be handled seamlessly?
On Fri, Aug 19, 2016 at 8:57 PM, Sidath Weerasinghe <[email protected]> wrote: > Hi Prabath, > > When client establish a connection with a one of the broker node then > client calls this service and get the live IP address of broker nodes in > cluster. For that we need to know one of the broker IP address. Then > periodically calling this service and update live IP address > automatically. For that there is no configurations. > > > > On Fri, Aug 19, 2016 at 5:15 PM, Prabath Ariyarathna <[email protected]> > wrote: > >> Hi Sidath. >> >> *Periodically calling this service we can get the dynamically adding MB >> node IP addresses and can remove disconnected IP addresses from the list. >> So it will always shuffle the IPs and provide it for the client.* >> >> Can you little bit elaborate this statement. >> - What time your going to calling this service? >> - Is this based on the configuration? >> >> Thanks. >> >> On Fri, Aug 19, 2016 at 4:59 PM, Indika Sampath <[email protected]> wrote: >> >>> I think option 1 would work because you have to use andes client as a >>> dependency to initiate individual connections with message broker. Also, >>> OSGi component should wrap message publishing service and provide it to the >>> caller. Inside the OSGi component, you can have logic to load balance >>> messages. >>> >>> On Fri, Aug 19, 2016 at 4:25 PM, Sidath Weerasinghe <[email protected]> >>> wrote: >>> >>>> Hi all, >>>> >>>> >>>> >>>> Message Broker provides means to horizontally scale between nodes. The >>>> client which communicates with the broker is notified on the availability >>>> of the broker nodes in the cluster via JMS connection URL, which allows >>>> defining of a failover string (the list of IPs of the broker nodes >>>> separated by comma). Also, When integrating with other products (eg- ESB, >>>> DAS); we specify the list of nodes in JNDI.properties file in the >>>> following manner. >>>> >>>> connectionfactory.QueueConnectionFactory = amqp://admin:admin@clientID >>>> /carbon failover='roundrobin'&cyclecount='2'&brokerlist='tcp://IP1:5672 >>>> retries='5'&connectdelay='50';tcp://IP2:5672?retries='5'&con >>>> nectdelay='50';tcp://IP3:5672?retries='5'&connectdelay='50'' >>>> >>>> Configurations to the JNDI.properties >>>> >>>> >>>> The above approach would require the user to manually list out IPs of >>>> the broker nodes to the client connection string or the application >>>> context, which in fact limits the user experience and achieving the >>>> scalability goals in the following way, >>>> >>>> >>>> 1. >>>> >>>> The user/developers having to manually list out the IPs in the >>>> connection URL could be prone to error. >>>> 2. >>>> >>>> The change of IPs of the broker nodes would require reconfiguring >>>> and restart the client applications connected to it. >>>> 3. >>>> >>>> The approach would also be a blocker for auto scaling between >>>> broker nodes. (Since addition of IPs needs to be manually reflected in >>>> the >>>> client application.The manual process would only address failover >>>> between >>>> broker nodes. This limits the client applications to load balance >>>> between >>>> the broker nodes) >>>> >>>> >>>> >>>> >>>> How existing system works >>>> >>>> >>>> Proposed solution >>>> >>>> >>>> >>>> - >>>> >>>> Specify an admin service inside the MB. where, the broker clients >>>> could query the service to get the list of IPs in the broker cluster. >>>> - >>>> >>>> Via calling an admin service which is implemented inside the MB; >>>> can discover available MB nodes in the cluster. >>>> - >>>> >>>> Periodically calling this service we can get the dynamically adding >>>> MB node IP addresses and can remove disconnected IP addresses from the >>>> list. So it will always shuffle the IPs and provide it for the client. >>>> - >>>> >>>> According to the live MB node IP address, I will create the >>>> connections and use this connection as round robin fashion or use >>>> disruptor >>>> for load balancing purpose. >>>> >>>> [image: pic 2] >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>>> There are several ideas for doing this. >>>> >>>> 1. Build separate OSGI component >>>> 2. Modify the Andes client according to the above scenario. >>>> >>>> Any ideas? >>>> >>>> -- >>>> Thank You, >>>> Best Regards, >>>> >>>> Sidath Weerasinghe >>>> >>>> >>>> *Intern* >>>> >>>> *WSO2, Inc. * >>>> >>>> *lean . enterprise . middleware * >>>> >>>> >>>> *Mobile: +94719802550 <%2B94%20777764144>* >>>> >>>> *Email: *[email protected] <[email protected]> >>>> >>>> _______________________________________________ >>>> Architecture mailing list >>>> [email protected] >>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >>>> >>>> >>> >>> >>> -- >>> Indika Sampath >>> Senior Software Engineer >>> WSO2 Inc. >>> http://wso2.com >>> >>> Phone: +94 716 424 744 >>> Blog: http://indikasampath.blogspot.com/ >>> >>> >>> _______________________________________________ >>> Architecture mailing list >>> [email protected] >>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >>> >>> >> >> >> -- >> >> *Prabath Ariyarathna* >> >> *Associate Technical Lead* >> >> *WSO2, Inc. * >> >> *lean . enterprise . middleware * >> >> >> *Email: [email protected] <[email protected]>* >> >> *Blog: http://prabu-lk.blogspot.com <http://prabu-lk.blogspot.com>* >> >> *Flicker : https://www.flickr.com/photos/47759189@N08 >> <https://www.flickr.com/photos/47759189@N08>* >> >> *Mobile: +94 77 699 4730 * >> >> >> >> >> >> >> _______________________________________________ >> Architecture mailing list >> [email protected] >> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >> >> > > > -- > Thank You, > Best Regards, > > Sidath Weerasinghe > > > *Intern* > > *WSO2, Inc. * > > *lean . enterprise . middleware * > > > *Mobile: +94719802550 <%2B94%20777764144>* > > *Email: *[email protected] <[email protected]> > > _______________________________________________ > Architecture mailing list > [email protected] > https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture > > -- Best Regards, Malaka Silva Senior Technical Lead M: +94 777 219 791 Tel : 94 11 214 5345 Fax :94 11 2145300 Skype : malaka.sampath.silva LinkedIn : http://www.linkedin.com/pub/malaka-silva/6/33/77 Blog : http://mrmalakasilva.blogspot.com/ WSO2, Inc. lean . enterprise . middleware https://wso2.com/signature http://www.wso2.com/about/team/malaka-silva/ <http://wso2.com/about/team/malaka-silva/> https://store.wso2.com/store/ Don't make Trees rare, we should keep them with care
_______________________________________________ Architecture mailing list [email protected] https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
