You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@synapse.apache.org by Vikas <vi...@infravio.com> on 2006/03/16 15:07:46 UTC

IRC-Log (16 - march-2006)

     paulfremantle HI 
     paulfremantle sorry im late 
     paulfremantle technical problems getting on ! 
     -->| Hariharasudhan (n=hari@220.225.137.194) has joined #apache-synapse 
     pvikas hi everyone.. 
     Hariharasudhan hi everyone ..  
     paulfremantle how are you? 
     Hariharasudhan iam fine thankyou  
     Soumadeep hi everyone 
     paulfremantle hi Soumadeep 
     paulfremantle did you get a chance to look at the code I sent? 
     Soumadeep Yeah I did... the thing is the lookup is all embedded 
     paulfremantle explain? 
     Soumadeep So you see, we need to do all the parsing for each mediator 
     paulfremantle no 
     paulfremantle the parsing is done by ADB 
     paulfremantle the example I sent I coded the XML Helper because ADB wasn't working properly 
     paulfremantle they have fixed it 
     Soumadeep ok 
     paulfremantle so the only requirement is to write beans or schema to describe the data structures 
     pvikas got a doubt... we need the schemas to generate the classes while doing a bean-mapping? 
     Soumadeep so the consumer and consumerIdentification classes were generated by adb. right? 
     paulfremantle no 
     paulfremantle vikas 
     paulfremantle there are two ways of using ADB 
     paulfremantle 1) XSD2Java 
     paulfremantle which requires a schema 
     paulfremantle (tho there is a very cool Eclipse tool to create the schema) 
     paulfremantle or 
     paulfremantle 2) BeanUtil 
     paulfremantle which uses reflection to read an XML into an existing Bean 
     -->| Rajesh_Koilpilla (n=chatzill@220.225.137.194) has joined #apache-synapse 
     Soumadeep You mean the instance will be created from the xml 
     paulfremantle yep 
     Soumadeep and the bean needs to be generated... like it's done in xmlBeans 
     paulfremantle no 
     paulfremantle if you use the dynamic one 
     paulfremantle you can just code some simple javabeans 
     Soumadeep ok... ok 
     paulfremantle and serialise/deserialise 
     paulfremantle i JUST got a note from deepal saying he fixed the BeanUtil 
     paulfremantle so I'll try it out and send some code through 
     Soumadeep well, still the problem is the classes that are generated are hard coded.. 
     paulfremantle as long as the bean has getters/setters that match the xml tags 
     paulfremantle why is that a problem? 
     Soumadeep we then need to maintain it... in case there is a change in the config file 
     paulfremantle you have to maintain something 
     Soumadeep yup 
     paulfremantle and Java is a good choice.... its easy to see the mapping 
     Soumadeep 1) maintain the java code 2) also make changes in the mediator - for any change in the config files 
     paulfremantle but 
     paulfremantle the point is  
     paulfremantle if I make a change to the config file now 
     paulfremantle i dont have any type-safety 
     paulfremantle under SO 
     dims waves and says hi 
     paulfremantle but if instead I change the JavaBean 
     paulfremantle then my GUI and compiler point out the places where the mediator needs changing 
     paulfremantle that is a benefit 
     Soumadeep at the attribute level we have metadata 
     Soumadeep in So 
     Soumadeep which is more important in this case as it's all about name-value pair 
     paulfremantle but i am representing your NV pairs perfectly well 
     paulfremantle the problem with SO is that everything is a NV pair. You cannot use the full structure of XML 
     paulfremantle so if I have a unbounded list of serviceIDs 
     paulfremantle you have to call them  
     paulfremantle serviceID1 
     paulfremantle serviceID2 
     paulfremantle serviceID983 
     paulfremantle etc 
     paulfremantle whereas with ADB and pure XML you can simply have a sequence 
     Soumadeep oh you are talking about the SynapseObject Name... 
     Soumadeep for that you can auto generate... we gave it a name so that it's user friendly 
     paulfremantle no this is a serious point.... you cannot have an array in SynapseObject 
     Soumadeep yes you can 
     paulfremantle how? 
     Soumadeep a SynapseObject can have a SynapseObject... at the attribute level we can add an Object Array type 
     paulfremantle but this is all replicating what is in XML 
     Soumadeep getObjectArray("listOfIPs"); 
     paulfremantle I strongly believe  
     paulfremantle that the code model I sent 
     paulfremantle is more maintainable 
     paulfremantle simpler 
     paulfremantle has easier-to-read XML 
     Soumadeep yeah I get your point....  
     Soumadeep <Items> 
     Soumadeep <Item/> 
     Soumadeep <Item/> 
     Soumadeep </Items> 
     paulfremantle and is more appropriate than SO 
     paulfremantle i am very happy if you want to use SO 
     paulfremantle as long as it isn't in the core of Synapse 
     Soumadeep Well, the only reason I proposed So was... to give an user a facility by which they can manipulate config data easily, rather than write utils for every mediator 
     paulfremantle I understand 
     paulfremantle but those utils are already written 
     paulfremantle and if we find bugs in them 
     paulfremantle the Axis2 team have promised to fix them :p 
     paulfremantle i think writing JavaBeans to manipulate config data is actually good - it makes it clear to a Java programmer what the config structure is 
     pvikas [wondering] can i get back object-types from OMElement without writing a new util or can i do a depth first search on it without new UTILS? 
     paulfremantle Object types.... is BeanUtil 
     Soumadeep I feel too much flexibility is deterrent 
     paulfremantle Depth First search - is XPath 
     Soumadeep The other issues that we might need to focus is management features 
     Soumadeep Chathura, did share some of his thoughts about the management interface but I had a feeling that he had put admin and management fetaures together 
     Soumadeep I feel we need to isolate them 
     Soumadeep Any thoughts? 
     Soumadeep Have we come to any conclusion about how to instrument management data and the mechanism by which we will propagate transaction events 
     Soumadeep ? 
     paulfremantle well firstly 
     paulfremantle i think we need to have part of this discussion on the axis2 mailing list 
     paulfremantle i think we ought to instrument axis2 better 
     paulfremantle but I think we can easily add some instrumentation to our usage of Axis2 
     paulfremantle so for example  
     paulfremantle when we make a call to a remote service 
     paulfremantle i think that could easily be instrumented in Synapse 
     paulfremantle i personally think we need to put a lot of focus on ws-rm and ws-security 
     paulfremantle i see a lot of requests for people to use synapse to support those 
     pvikas they would be QoS modules, part of axis2.. users can leverage their functionalities if they need it, is there anything specific Synapse can do in that field? 
     paulfremantle yes we need to have mediators that enable and control the underlying modules 
     paulfremantle so that a synapse config can define the rm considerations for a flow thru synapse for example 
     Soumadeep Can you give us a scenario in terms of how Transaction events will be sent? 
     paulfremantle im not sure i understand the question 
     paulfremantle WS-AT transactions do you mean? 
     Soumadeep I was under the impression that we will be using JMX notification to send events 
     paulfremantle oh i see 
     paulfremantle from a management perspective? 
     Soumadeep yeah 
     paulfremantle well im not a JMX guru.... I actually think it might be more useful to have a mediator that can send a message to another SOAP endpoint 
     paulfremantle for example 
     paulfremantle <notify> 
     paulfremantle and have the config for the notify mediator 
     paulfremantle specify the message and URL to send 
     paulfremantle what do you think? 
     Soumadeep Well, I would suggest we should be using some eventing concepts, as it's monitoring related and we need to transport the data as quickly as possible 
     paulfremantle yes i agree 
     paulfremantle for example doing a JMS publication would suit a lot of companies 
     paulfremantle or creating an SNMP event 
     paulfremantle I personally think JMX is good - but I don't yet see wide adoption for enterprises 
     Soumadeep SNMP... now more improved to JMS :-) 
     Soumadeep I mean JMX 
     paulfremantle but you guys may have seen something different 
     pvikas once synapse defines a standard way of assimilating and keeping management data, users can define their own mediators to handle them... 
     paulfremantle yes +1 vikas 
     pvikas so i think we should concentrate on covering the data and not the mode ??? 
     paulfremantle well.... lets try to do a bit of both 
     paulfremantle i think we need at least one or two mediators that show how it can be used 
     Soumadeep Are you all ok with the MIX struct that I sent earlier? 
     pvikas a sample management_event handling mediator can be provided... 
     paulfremantle say a SOAP send and a SNMP 
     Soumadeep We have one in place 
     paulfremantle yes  
     paulfremantle cool 
     Yury hi, I want to make research about load balancing on soap intermediary level. So can you give me any directions? 
     paulfremantle i think it was pretty good 
     paulfremantle hi Yury 
     paulfremantle we are doing some work on that 
     paulfremantle Soumadeep --- maybe you can tell him about the failover mediator 
     Soumadeep Let me send the JMX Mediator that we tested at our end .... using the MIX format... 
     paulfremantle (I have to go --- I have another call starting 
     paulfremantle yes please 
     pvikas actually, we have worked a bit on the load-balancing part... but stalled because of the discussion over SO and OMElements... 
     paulfremantle cool 
     paulfremantle can someone post the log? 
     paulfremantle when you guys finish up? 
     Soumadeep Bye everyone... 
     pvikas i find it rather tough to work with all the freedom and flexibility that OMelements provide 
     paulfremantle bye! 
     <--| paulfremantle has left #apache-synapse 
     pvikas so Yury.. what exactly are u looking for? 
     Yury so 
     Yury i can't find any serious benefits on doing that on soap level 
     Yury what do you think? 
     Yury there are a lot hardware solution for that 
     Soumadeep that depends on what you are trying to achieve 
     Soumadeep :-) 
     Yury hm... 
     Soumadeep Here the concept of load balancing is more of routing to an EPR 
     Yury so, what i have found is some load balancing strategies 
     Soumadeep Can you share it with us 
     pvikas could think of round-robin and performance based... any more? 
     Yury one sec 
     Yury RoundRobin – This non-adaptive strategy keeps a list 
     Yury of locations containing at least one object group member, 
     Yury and selects members by simply iterating through 
     Yury that location list. 
     Yury Random – This non-adaptive strategy keeps a list of 
     Yury locations where object group members are present and 
     Yury randomly chooses a location to serve a request. 
     Yury LeastLoaded – This adaptive strategy allows locations 
     Yury to continue receiving requests until a threshold value 
     Yury is reached. Once the threshold value is reached, subsequent 
     Yury requests are transferred to the location with the 
     Yury lowest load. 
     Yury LoadMinimum – This adaptive strategy calculates 
     Yury the average loads at locations containing object group 
     Yury members. If the load at a particular location is higher 
     Yury than the average load and greater than the least loaded 
     Yury location by a certain migration threshold percentage, 
     Yury all subsequent requests will be transferred to the least 
     Yury loaded location. 
     pvikas oh.. so random is something i missed.. 
     pvikas Yury, are you on the mailing list? 
     Yury yep 
     pvikas will be putting in mediators for load-balancing and failover soon... pending a discussion on the xml format.. 
     pvikas maybe you can help us formulate strategies.. 
     Yury ok 
     pvikas ok.. got to go..BYE 
     Yury bye 
     Soumadeep bye guys 
     |<-- Soumadeep has left irc.freenode.net ("ChatZilla 0.9.61 [Mozilla rv:1.7.2/20040803]")