Hi all,
This is regarding the retrieval of IP addresses of a node. In the local cluster, I could retrieve the IP addresses of all network interfaces, the AMQP port and the AMQP SSL port in order to store them in the database at broker startup. When a node shuts down, details of the removed node are removed from the database by the cluster coordinator. In an AWS cluster, I could get the private and public IP of the instance and store in the database at broker startup. When a node shuts down, details of the removed node are removed from the database by the cluster coordinator. Since these are two different implementations, I am planning to have a configuration for this in the broker.xml file as follows: <dynamicDiscovery>mode</dynamicDiscovery> where the mode can be one of "AwsIpAddressRetriever" and "LocalIpAddressRetriever" any ideas ? On Thu, Oct 20, 2016 at 2:07 PM, Sidath Weerasinghe <[email protected]> wrote: > Hi Asanka, > > I get the Node Id from CoordinationConfigurableClusterAgent class. There > is no validation for that. > I changed XML structure according to the standards. > > > > > > > > > > > > *<node id="NODE:10.100.4.165:4000 <http://10.100.4.165:4000>"> > <addresses> <address ip="10.100.4.165" port="5672" ssl-port="8672" > interface-name="wlp3s0"/> <address ip="192.168.11.50" > port="5672" ssl-port="8672" interface-name="enp0s25"/> > </addresses></node><node id="NODE:10.100.4.166:4000 > <http://10.100.4.166:4000>"> <addresses> <address > ip="10.100.4.166" port="5672" ssl-port="8672" interface-name="wlp3s0"/> > </addresses></node>* > > On Thu, Oct 20, 2016 at 12:05 PM, Asanka Abeyweera <[email protected]> > wrote: > >> Hi Sidath, >> >> What was the reason to use *PascalCase* for attribute names? In HTML for >> attributes we normally use all lower case with hyphens [1]. Maybe we should >> adhere to the same style. WDYT? >> >> Do we currently have any character restrictions on the Node id? Are we >> escaping the reserved characters in values before generating the XML? >> >> [1] http://www.w3schools.com/tags/ref_attributes.asp >> >> On Thu, Oct 20, 2016 at 11:49 AM, Sidath Weerasinghe <[email protected]> >> wrote: >> >>> Hi all, >>> >>> Andes client invokes the admin service to get IP address and ports of >>> the live nodes in the cluster. >>> Admin service makes XML structure and sends that string to the client >>> who invokes the service. >>> >>> Previous XML structure is changed. Here is the new structure of the XML, >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> *<Node Id = "NODE:10.100.4.165:4000 <http://10.100.4.165:4000>"> >>> <Addresses> <Address Ip="10.100.4.165", Port="5672", SslPort = >>> "8672", InterfaceName="wlp3s0"></Address> <Address >>> Ip="192.168.11.50", Port="5672", SslPort = "8672", >>> InterfaceName="enp0s25"></Address> </Addresses></Node><Node Id = >>> "NODE:10.100.4.166:4000 <http://10.100.4.166:4000>"> <Addresses> >>> <Address Ip="10.100.4.166", Port="5672", SslPort = "8672", >>> InterfaceName="wlp3s0"></Address> </Addresses></Node>* >>> Any comments? >>> >>> On Fri, Oct 7, 2016 at 7:57 AM, Sidath Weerasinghe <[email protected]> >>> wrote: >>> >>>> Hi all, >>>> >>>> Then we can use java Socket isconnected() method for this. It returns true >>>> if the socket was successfully bound to an address. >>>> >>>> On Thu, Oct 6, 2016 at 1:50 PM, Pamod Sylvester <[email protected]> wrote: >>>> >>>>> Asanka's point is valid. Sending a ping request could have the >>>>> constraint of having a particular port being blocked i.e by firewall etc. >>>>> >>>>> How about sending a TCP heartbeat to the AMQP/MQTT port itself ? wdyt >>>>> ? >>>>> >>>>> Thanks, >>>>> Pamod >>>>> >>>>> On Thu, Oct 6, 2016 at 1:42 PM, Asanka Abeyweera <[email protected]> >>>>> wrote: >>>>> >>>>>> Hi Sidath, >>>>>> >>>>>> I do not think ping command is a good approach. The reasons are, >>>>>> >>>>>> 1. PING command uses the ICMP which is different from the AMQP which >>>>>> we use for broker communication. >>>>>> 2. ICMP can be blocked from the firewall while AMQP is unblocked. >>>>>> >>>>>> On Thu, Oct 6, 2016 at 1:36 PM, Sidath Weerasinghe <[email protected]> >>>>>> wrote: >>>>>> >>>>>>> Hi Asanka, >>>>>>> >>>>>>> Still there is one way to choose the network. That is ping method. >>>>>>> Get the one IP and ping to that. Then we can get the all IP address >>>>>>> which >>>>>>> are related to that interface. otherwise we want to ping all the IP >>>>>>> address. >>>>>>> >>>>>>> On Thu, Oct 6, 2016 at 1:16 PM, Asanka Abeyweera <[email protected]> >>>>>>> wrote: >>>>>>> >>>>>>>> Hi Sidath, >>>>>>>> >>>>>>>> We cannot say that the network is same when the interface name is >>>>>>>> same. System admin can configure network interfaces the way they >>>>>>>> prefer. >>>>>>>> Therefore we cannot use network interface name to identify if they are >>>>>>>> in >>>>>>>> the same network. If we want to identify if two network interfaces in >>>>>>>> the >>>>>>>> same network, we have to use a method like checking the subnet using >>>>>>>> the >>>>>>>> netmask. Additionally there can be cases where two interfaces belong >>>>>>>> to the >>>>>>>> two different subsnets which are connected using a router. In this >>>>>>>> case not >>>>>>>> using an interface to connect the broker since it is in a different >>>>>>>> subnet >>>>>>>> is wrong. >>>>>>>> >>>>>>>> On Thu, Oct 6, 2016 at 1:03 PM, Sidath Weerasinghe <[email protected] >>>>>>>> > wrote: >>>>>>>> >>>>>>>>> Hi Asanka, >>>>>>>>> >>>>>>>>> I am using this structure because of client wants to get the IP >>>>>>>>> address with is related to client network(Client is in LAN or WiFi). >>>>>>>>> So in >>>>>>>>> this structure Andes client get the one of IP and choose the suitable >>>>>>>>> network to connect. If I group IP addresses based on the nodes then >>>>>>>>> how can >>>>>>>>> I get the suitable IP address which is related to the client network. >>>>>>>>> Then >>>>>>>>> client want to check all the IP address on the structure. >>>>>>>>> >>>>>>>>> On Thu, Oct 6, 2016 at 12:03 PM, Asanka Abeyweera < >>>>>>>>> [email protected]> wrote: >>>>>>>>> >>>>>>>>>> Hi Sidath, >>>>>>>>>> >>>>>>>>>> If I understood correctly, we are grouping the IP addresses >>>>>>>>>> belonging to different nodes according to their interface name. What >>>>>>>>>> was >>>>>>>>>> the reason for doing that? >>>>>>>>>> >>>>>>>>>> With this approach, I do not see a way to identify the IP >>>>>>>>>> addresses belonging to a specific node. I think the requirement is >>>>>>>>>> to load >>>>>>>>>> balance between different MB nodes available in the cluster. >>>>>>>>>> Therefore I >>>>>>>>>> think it is important to group IP addresses based on the nodes >>>>>>>>>> instead of >>>>>>>>>> using interface name to group . >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> On Thu, Oct 6, 2016 at 11:42 AM, Sidath Weerasinghe < >>>>>>>>>> [email protected]> wrote: >>>>>>>>>> >>>>>>>>>>> Hi Asanka, >>>>>>>>>>> >>>>>>>>>>> Each node can be have different intercaces (LAN, WiFi). >>>>>>>>>>> So that I got the those IP and ports of all the interfaces. >>>>>>>>>>> >>>>>>>>>>> <Eth1> - Wifi >>>>>>>>>>> <Eth0> - LAN >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> *<?xml version="1.0" encoding="UTF-8"?><IpList> <Eth1> >>>>>>>>>>> <default> <IP>10.100.4.165:5672 >>>>>>>>>>> <http://10.100.4.165:5672></IP> <IP>10.100.4.165:5673 >>>>>>>>>>> <http://10.100.4.165:5673></IP> </default> <ssl> >>>>>>>>>>> <IP>10.100.4.165:8672 <http://10.100.4.165:8672></IP> >>>>>>>>>>> <IP>10.100.4.165:8673 <http://10.100.4.165:8673></IP> </ssl> >>>>>>>>>>> </Eth1> <Eth0> <default> <IP>192.165.55.20:5672 >>>>>>>>>>> <http://192.165.55.20:5672></IP> <IP>192.165.55.20:5673 >>>>>>>>>>> <http://192.165.55.20:5673></IP> </default> <ssl> >>>>>>>>>>> <IP>192.165.55.20:8672 <http://192.165.55.20:8672></IP> >>>>>>>>>>> <IP>192.165.55.20:8673 <http://192.165.55.20:8673></IP> >>>>>>>>>>> </ssl> >>>>>>>>>>> </Eth0></IpList>* >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> *<Eth1> <default> - WiFi binded IP address * >>>>>>>>>>> >>>>>>>>>>> * <IP>10.100.4.165:5672 >>>>>>>>>>> <http://10.100.4.165:5672></IP> - Nodes in cluster >>>>>>>>>>> <IP>10.100.4.165:5673 <http://10.100.4.165:5673></IP> - **Nodes >>>>>>>>>>> in cluster* >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> * <Eth0> <default> - LAN binded IP address* >>>>>>>>>>> * <IP>192.165.55.20:8672 >>>>>>>>>>> <http://192.165.55.20:8672></IP> * >>>>>>>>>>> *- Nodes in cluster <IP>192.165.55.20:8673 >>>>>>>>>>> <http://192.165.55.20:8673></IP> **- Nodes in cluster* >>>>>>>>>>> >>>>>>>>>>> On Thu, Oct 6, 2016 at 11:15 AM, Asanka Abeyweera < >>>>>>>>>>> [email protected]> wrote: >>>>>>>>>>> >>>>>>>>>>>> Hi Sidath, >>>>>>>>>>>> >>>>>>>>>>>> From this structure, how can we differentiate between IP >>>>>>>>>>>> addresses belonging to different node? >>>>>>>>>>>> >>>>>>>>>>>> On Thu, Oct 6, 2016 at 11:09 AM, Sidath Weerasinghe < >>>>>>>>>>>> [email protected]> wrote: >>>>>>>>>>>> >>>>>>>>>>>>> Hi all, >>>>>>>>>>>>> >>>>>>>>>>>>> Andes client invokes the admin service to get IP address and >>>>>>>>>>>>> ports of the live nodes in the cluster. >>>>>>>>>>>>> Admin service makes XML structure and sends that string to >>>>>>>>>>>>> the client who invokes the service. >>>>>>>>>>>>> . >>>>>>>>>>>>> Here is the structure of the XML, >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> *<?xml version="1.0" encoding="UTF-8"?><IpList> >>>>>>>>>>>>> <Eth1> <default> <IP>10.100.4.165:5672 >>>>>>>>>>>>> <http://10.100.4.165:5672></IP> <IP>10.100.4.165:5673 >>>>>>>>>>>>> <http://10.100.4.165:5673></IP> </default> <ssl> >>>>>>>>>>>>> <IP>10.100.4.165:8672 <http://10.100.4.165:8672></IP> >>>>>>>>>>>>> <IP>10.100.4.165:8673 <http://10.100.4.165:8673></IP> >>>>>>>>>>>>> </ssl> >>>>>>>>>>>>> </Eth1></IpList>* >>>>>>>>>>>>> >>>>>>>>>>>>> The user can choose the SSL by setting a system property in >>>>>>>>>>>>> the client program. Otherwise, it always takes default ones. >>>>>>>>>>>>> >>>>>>>>>>>>> Any comments ? >>>>>>>>>>>>> >>>>>>>>>>>>> On Thu, Sep 29, 2016 at 1:39 PM, Sidath Weerasinghe < >>>>>>>>>>>>> [email protected]> wrote: >>>>>>>>>>>>> >>>>>>>>>>>>>> Hi Malaka, >>>>>>>>>>>>>> >>>>>>>>>>>>>> I got the IP address (all network interfaces) and AMQP port >>>>>>>>>>>>>> and store database at cluster startup. When node shutdown that >>>>>>>>>>>>>> details are >>>>>>>>>>>>>> removed from the database. >>>>>>>>>>>>>> I wrote an admin service to get those database details at the >>>>>>>>>>>>>> carbon business module. Inside the client, I call that service. >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> On Thu, Sep 29, 2016 at 12:08 PM, Malaka Silva < >>>>>>>>>>>>>> [email protected]> wrote: >>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> On Thu, Sep 29, 2016 at 10:06 AM, Sidath Weerasinghe < >>>>>>>>>>>>>>> [email protected]> wrote: >>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> Hi all, >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> In Andes client, I implemented a new initialContextFactory >>>>>>>>>>>>>>>> and inside that, I made an AMQP URL. >>>>>>>>>>>>>>>> Inside the Andes client, I called that web service to get >>>>>>>>>>>>>>>> the cluster node IP address and Port details. When calling web >>>>>>>>>>>>>>>> service it >>>>>>>>>>>>>>>> shuffles the IP address and gives String to the client. Using >>>>>>>>>>>>>>>> this, create >>>>>>>>>>>>>>>> AMQP URL inside the Andes client, Other IPs put as a failover. >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ​What is the web service you called to get the all the >>>>>>>>>>>>>>> members? Can this be a single point of failure? >>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> The client can set failover values as properties. Inside >>>>>>>>>>>>>>>> the new initialContextFactory, read those properties and set >>>>>>>>>>>>>>>> failover. >>>>>>>>>>>>>>>> "amqp://admin:admin@carbon/carbon?brokerlist='tcp:// >>>>>>>>>>>>>>>> 10.100.4.165:5672?*retries='10'&connectdelay='1000'*;tcp:// >>>>>>>>>>>>>>>> 10.100.4.166:5672? >>>>>>>>>>>>>>>> *retries='10'&connectdelay='1000''&failover='roundrobin?cyclecount='20'* >>>>>>>>>>>>>>>> '" >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> Any ideas for this. >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> On Thu, Sep 22, 2016 at 5:11 PM, Sidath Weerasinghe < >>>>>>>>>>>>>>>> [email protected]> wrote: >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> Hi all, >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> In MB, the user/developers having to manually list out the >>>>>>>>>>>>>>>>> IPs in the connection URL could be difficult. The change of >>>>>>>>>>>>>>>>> IPs of the >>>>>>>>>>>>>>>>> broker nodes would require reconfiguring and restart the >>>>>>>>>>>>>>>>> client >>>>>>>>>>>>>>>>> applications connected to it. I am implementing a way to >>>>>>>>>>>>>>>>> dynamically >>>>>>>>>>>>>>>>> detection the MB nodes in the cluster and load balance >>>>>>>>>>>>>>>>> through them. >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> I got the IP address(all network interfaces) and AMQP port >>>>>>>>>>>>>>>>> and store database at cluster startup. When node shutdown >>>>>>>>>>>>>>>>> that details are >>>>>>>>>>>>>>>>> removed from the database. >>>>>>>>>>>>>>>>> I wrote an admin service to get those database details at >>>>>>>>>>>>>>>>> the carbon business module. >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> In andes client, I implemented a new initialContextFactory >>>>>>>>>>>>>>>>> and inside that, I made an AMQP URL. As a mock, I got the IP >>>>>>>>>>>>>>>>> list from the >>>>>>>>>>>>>>>>> file and randomly select one of the IP and port and make AMPQ >>>>>>>>>>>>>>>>> URL. Other >>>>>>>>>>>>>>>>> IPs put as a fail-over. I tested it. >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> *Work to be done* >>>>>>>>>>>>>>>>> I will call web service inside the andes client and get >>>>>>>>>>>>>>>>> the IP and port and resolve it according to the client >>>>>>>>>>>>>>>>> network. After that >>>>>>>>>>>>>>>>> get the correct IP and the port. >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> -- >>>>>>>>>>>>>>>>> Thank You, >>>>>>>>>>>>>>>>> Best Regards, >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> Sidath Weerasinghe >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> *Intern* >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> *WSO2, Inc. * >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> *lean . enterprise . middleware * >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> *Mobile: +94719802550 <%2B94719802550>* >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> *Email: *[email protected] >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> Blog: https://medium.com/@sidath >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> Linkedin: https://lk.linkedin.com/in/sidathweerasinghe >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> -- >>>>>>>>>>>>>>>> Thank You, >>>>>>>>>>>>>>>> Best Regards, >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> Sidath Weerasinghe >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> *Intern* >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> *WSO2, Inc. * >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> *lean . enterprise . middleware * >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> *Mobile: +94719802550 <%2B94719802550>* >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> *Email: *[email protected] >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> Blog: https://medium.com/@sidath >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> Linkedin: https://lk.linkedin.com/in/sidathweerasinghe >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> _______________________________________________ >>>>>>>>>>>>>>>> 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 >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> -- >>>>>>>>>>>>>> Thank You, >>>>>>>>>>>>>> Best Regards, >>>>>>>>>>>>>> >>>>>>>>>>>>>> Sidath Weerasinghe >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> *Intern* >>>>>>>>>>>>>> >>>>>>>>>>>>>> *WSO2, Inc. * >>>>>>>>>>>>>> >>>>>>>>>>>>>> *lean . enterprise . middleware * >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> *Mobile: +94719802550 <%2B94719802550>* >>>>>>>>>>>>>> >>>>>>>>>>>>>> *Email: *[email protected] >>>>>>>>>>>>>> >>>>>>>>>>>>>> Blog: https://medium.com/@sidath >>>>>>>>>>>>>> >>>>>>>>>>>>>> Linkedin: https://lk.linkedin.com/in/sidathweerasinghe >>>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> -- >>>>>>>>>>>>> Thank You, >>>>>>>>>>>>> Best Regards, >>>>>>>>>>>>> >>>>>>>>>>>>> Sidath Weerasinghe >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> *Intern* >>>>>>>>>>>>> >>>>>>>>>>>>> *WSO2, Inc. * >>>>>>>>>>>>> >>>>>>>>>>>>> *lean . enterprise . middleware * >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> *Mobile: +94719802550 <%2B94719802550>* >>>>>>>>>>>>> >>>>>>>>>>>>> *Email: *[email protected] >>>>>>>>>>>>> >>>>>>>>>>>>> Blog: https://medium.com/@sidath >>>>>>>>>>>>> >>>>>>>>>>>>> Linkedin: https://lk.linkedin.com/in/sidathweerasinghe >>>>>>>>>>>>> >>>>>>>>>>>>> _______________________________________________ >>>>>>>>>>>>> Architecture mailing list >>>>>>>>>>>>> [email protected] >>>>>>>>>>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> -- >>>>>>>>>>>> Asanka Abeyweera >>>>>>>>>>>> Senior Software Engineer >>>>>>>>>>>> WSO2 Inc. >>>>>>>>>>>> >>>>>>>>>>>> Phone: +94 712228648 >>>>>>>>>>>> Blog: a5anka.github.io >>>>>>>>>>>> >>>>>>>>>>>> <https://wso2.com/signature> >>>>>>>>>>>> >>>>>>>>>>>> _______________________________________________ >>>>>>>>>>>> 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 <%2B94719802550>* >>>>>>>>>>> >>>>>>>>>>> *Email: *[email protected] >>>>>>>>>>> >>>>>>>>>>> Blog: https://medium.com/@sidath >>>>>>>>>>> >>>>>>>>>>> Linkedin: https://lk.linkedin.com/in/sidathweerasinghe >>>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>> Asanka Abeyweera >>>>>>>>>> Senior Software Engineer >>>>>>>>>> WSO2 Inc. >>>>>>>>>> >>>>>>>>>> Phone: +94 712228648 >>>>>>>>>> Blog: a5anka.github.io >>>>>>>>>> >>>>>>>>>> <https://wso2.com/signature> >>>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> -- >>>>>>>>> Thank You, >>>>>>>>> Best Regards, >>>>>>>>> >>>>>>>>> Sidath Weerasinghe >>>>>>>>> >>>>>>>>> >>>>>>>>> *Intern* >>>>>>>>> >>>>>>>>> *WSO2, Inc. * >>>>>>>>> >>>>>>>>> *lean . enterprise . middleware * >>>>>>>>> >>>>>>>>> >>>>>>>>> *Mobile: +94719802550 <%2B94719802550>* >>>>>>>>> >>>>>>>>> *Email: *[email protected] >>>>>>>>> >>>>>>>>> Blog: https://medium.com/@sidath >>>>>>>>> >>>>>>>>> Linkedin: https://lk.linkedin.com/in/sidathweerasinghe >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> Asanka Abeyweera >>>>>>>> Senior Software Engineer >>>>>>>> WSO2 Inc. >>>>>>>> >>>>>>>> Phone: +94 712228648 >>>>>>>> Blog: a5anka.github.io >>>>>>>> >>>>>>>> <https://wso2.com/signature> >>>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> Thank You, >>>>>>> Best Regards, >>>>>>> >>>>>>> Sidath Weerasinghe >>>>>>> >>>>>>> >>>>>>> *Intern* >>>>>>> >>>>>>> *WSO2, Inc. * >>>>>>> >>>>>>> *lean . enterprise . middleware * >>>>>>> >>>>>>> >>>>>>> *Mobile: +94719802550 <%2B94719802550>* >>>>>>> >>>>>>> *Email: *[email protected] >>>>>>> >>>>>>> Blog: https://medium.com/@sidath >>>>>>> >>>>>>> Linkedin: https://lk.linkedin.com/in/sidathweerasinghe >>>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> Asanka Abeyweera >>>>>> Senior Software Engineer >>>>>> WSO2 Inc. >>>>>> >>>>>> Phone: +94 712228648 >>>>>> Blog: a5anka.github.io >>>>>> >>>>>> <https://wso2.com/signature> >>>>>> >>>>>> _______________________________________________ >>>>>> Architecture mailing list >>>>>> [email protected] >>>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> *Pamod Sylvester * >>>>> >>>>> *WSO2 Inc.; http://wso2.com <http://wso2.com>* >>>>> cell: +94 77 7779495 >>>>> >>>> >>>> >>>> >>>> -- >>>> Thank You, >>>> Best Regards, >>>> >>>> Sidath Weerasinghe >>>> >>>> >>>> *Intern* >>>> >>>> *WSO2, Inc. * >>>> >>>> *lean . enterprise . middleware * >>>> >>>> >>>> *Mobile: +94719802550 <%2B94719802550>* >>>> >>>> *Email: *[email protected] >>>> >>>> Blog: https://medium.com/@sidath >>>> >>>> Linkedin: https://lk.linkedin.com/in/sidathweerasinghe >>>> >>> >>> >>> >>> -- >>> Thank You, >>> Best Regards, >>> >>> Sidath Weerasinghe >>> >>> >>> *Intern* >>> >>> *WSO2, Inc. * >>> >>> *lean . enterprise . middleware * >>> >>> >>> *Mobile: +94719802550 <%2B94719802550>* >>> >>> *Email: *[email protected] >>> >>> Blog: https://medium.com/@sidath >>> >>> Linkedin: https://lk.linkedin.com/in/sidathweerasinghe >>> >>> _______________________________________________ >>> Architecture mailing list >>> [email protected] >>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >>> >>> >> >> >> -- >> Asanka Abeyweera >> Senior Software Engineer >> WSO2 Inc. >> >> Phone: +94 712228648 >> Blog: a5anka.github.io >> >> <https://wso2.com/signature> >> >> _______________________________________________ >> 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 <%2B94719802550>* > > *Email: *[email protected] > > Blog: https://medium.com/@sidath > > Linkedin: https://lk.linkedin.com/in/sidathweerasinghe > -- Thank You, Best Regards, Sidath Weerasinghe *Intern* *WSO2, Inc. * *lean . enterprise . middleware * *Mobile: +94719802550* *Email: *[email protected] Blog: https://medium.com/@sidath Linkedin: https://lk.linkedin.com/in/sidathweerasinghe
_______________________________________________ Architecture mailing list [email protected] https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
