Re: Getting CPU Usage of JVM using SNMP
Dear All FYI I was able to get JVM information except for CPU information using MUNIN regards Mohan Mohan2005 wrote: Hello All; I can get the JVM memory information using the following SNMP commands. /usr/bin/snmpwalk -c public -v 2c 172.10.1.11:3000 .1.3.6.1.4.1.42.2.145.3.163.1.1.2.110.1.2 SNMPv2-SMI::enterprises.42.2.145.3.163.1.1.2.110.1.2.1 = STRING: Code Cache SNMPv2-SMI::enterprises.42.2.145.3.163.1.1.2.110.1.2.2 = STRING: PS Eden Space SNMPv2-SMI::enterprises.42.2.145.3.163.1.1.2.110.1.2.3 = STRING: PS Survivor Space SNMPv2-SMI::enterprises.42.2.145.3.163.1.1.2.110.1.2.4 = STRING: PS Old Gen SNMPv2-SMI::enterprises.42.2.145.3.163.1.1.2.110.1.2.5 = STRING: PS Perm Gen /usr/bin/snmpwalk -c public -v 2c 172.10.1.11:3000 .1.3.6.1.4.1.42.2.145.3.163.1.1.2.110.1.11 SNMPv2-SMI::enterprises.42.2.145.3.163.1.1.2.110.1.11.1 = Counter64: 11676480 SNMPv2-SMI::enterprises.42.2.145.3.163.1.1.2.110.1.11.2 = Counter64: 95143168 SNMPv2-SMI::enterprises.42.2.145.3.163.1.1.2.110.1.11.3 = Counter64: 3351432 SNMPv2-SMI::enterprises.42.2.145.3.163.1.1.2.110.1.11.4 = Counter64: 345422296 SNMPv2-SMI::enterprises.42.2.145.3.163.1.1.2.110.1.11.5 = Counter64: 119718616 Is there a way to get the CPU information for the JVM in a similar manner ? Thanks Regards Mohan -- View this message in context: http://www.nabble.com/Getting-CPU-Usage-of-JVM-using-SNMP-tp15607272p17772148.html Sent from the Tomcat - User mailing list archive at Nabble.com. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: jkmanager node limitation
Hello Rainer I am using mod_jk 1.2.25 And I assume val1 is the name of the node (NODE1 in this case) so I tried both http://localhost/jkmanager/?cmd=updatemime=txtw=TESTatt=waNODE1=activate and http://localhost/jkmanager/?cmd=updatemime=txtw=TESTatt=waval1=activate But did not activate a stopped node. (NODE1 in this case) Thanks you for your help and attention to this. Regards Mohan Rainer Jung-3 wrote: Mohan2005 schrieb: Hello Again; I tried the following, did not take effect; What am I doing wrong here please; My jkmanager shows this for the Loadbalancer TEST and it has only one node called NODE1 NameTypeHostAddrAct State D F M V Acc Err CE RE Wr Rd BusyMax Route RR Cd Rs [E|R]NODE1 ajp13 10.0.0.112:8109 10.0.0.112:8109 STP OK/IDLE 0 1 1 0 0 00 00 0 0 0 NODE1 WwwNODE1Com 0/0 Then I would call the following url to Activate the node. http://localhost/jkmanager/?cmd=updatemime=txtw=TESTatt=waNODE1=activate Go to the esit page and do the same change via the GUI. After committing the change in the GUI, there should be the correct URL in the browser URL line for a couple of seconds, before the browser gets redirected to the start page. The only parameter, which will be missing, is mime, which is not very important and will only format the OK message slightly different, in case you want to evaluate it later in your script client. You can also have a look at the form contents. See below, for what I expect as a correct URL. This would result in Result: type=OK message=Action finished But the node does not get activated. Please advice. Thanks and regards Mohan Rainer Jung-3 wrote: Mladen Turk wrote: Mohan2005 wrote: Examples: cmd=update mime=txt w=myloadbalancer sw=memberofloadbalancer wa=disabled http://localhost/jkmanager/?cmd=updatemime=txtw=TESTsw=NODE1wa=activate Mass editing of one attribute for all sub workers (also called edit by aspect) could be done via cmd=update mime=txt w=myloadbalancer att=wa val1=disabled val2=active val3=disabled val4=disabled val5=active http://localhost/jkmanager/?cmd=updatemime=txtw=TESTatt=waval1=activate Regards, Rainer - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- View this message in context: http://www.nabble.com/jkmanager-node-limitation-tp17720375p17775050.html Sent from the Tomcat - User mailing list archive at Nabble.com. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: jkmanager node limitation
Yes :-) That works like a beauty. Thanks a lot again. I will document this. Regards Mohan Mohan2005 wrote: Hello All; Can you please tell me the maximum number of nodes a JkManager can handle without any issues ? Assume a Quad-Core large memory system. Thanks and Regards Mohan -- View this message in context: http://www.nabble.com/jkmanager-node-limitation-tp17720375p17775798.html Sent from the Tomcat - User mailing list archive at Nabble.com. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: jkmanager node limitation
On the same front, say we have 50 nodes and one jkmanager. There would be a management problem to disable/activate nodes. Is there a way to disable/activate nodes passing URL parameters to jkmanager ? Or is the only way to edit the workers.properties file and use the 'activation' keyword. Example to activate node1000 worker.node1000.activation=s and worker.node1000.activation=Active thanks and regards Mohan Mohan2005 wrote: Thank you. Mladen Turk-4 wrote: Mohan2005 wrote: Hello All; Can you please tell me the maximum number of nodes a JkManager can handle without any issues ? Theoretically unlimited, but number of workers is defined by int, thus 2^31 - 1, for 32-bit integer systems. Each node consumes around 1K of data so multiply that by the number of nodes and number of child processes, and you'll get a rough estimate about configuration footprint. JkManager uses table scan for finding nodes (workers), so it's O(n). However this is still much faster then any database like structure, because this data is in shared memory. In general, the size what jkmanager can handle will be the last thing you'll need to worry about. Regards -- ^(TM) - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- View this message in context: http://www.nabble.com/jkmanager-node-limitation-tp17720375p17757922.html Sent from the Tomcat - User mailing list archive at Nabble.com. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: jkmanager node limitation
Thank you. I will. Regards mohan Rainer Jung-3 wrote: Mladen Turk wrote: Mohan2005 wrote: On the same front, say we have 50 nodes and one jkmanager. There would be a management problem to disable/activate nodes. Is there a way to disable/activate nodes passing URL parameters to jkmanager ? No, but that's a good idea to put a wildchar processing for worker names (same rules as for JkMount) I would suggest you fill in the bugzilla enhancement request for Native:JK component at: https://issues.apache.org/bugzilla/enter_bug.cgi?product=Tomcat%206 Yes, please add an issue about status worker and using patterns for worker and sub worker. In the meantime, you can try to automate the activation setting for multiple workers by using a script. The details for the status worker URL arguments can be found on the page http://tomcat.apache.org/connectors-doc/reference/status.html#Request%20Parameters and you can always check, which URLs get used by interactive usage, because we never use POST. Examples: cmd=update mime=txt w=myloadbalancer sw=memberofloadbalancer wa=disabled Mass editing of one attribute for all sub workers (also called edit by aspect) could be done via cmd=update mime=txt w=myloadbalancer att=wa val1=disabled val2=active val3=disabled val4=disabled val5=active Of course this only works as long as the URL doesn't get to long. There's no guarantee about the order of the sub workers though, so you first need to check the order resulting from your config in the GUI of the status worker. Regards, Rainer - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- View this message in context: http://www.nabble.com/jkmanager-node-limitation-tp17720375p17767755.html Sent from the Tomcat - User mailing list archive at Nabble.com. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: jkmanager node limitation
Hello Again; I tried the following, did not take effect; What am I doing wrong here please; My jkmanager shows this for the Loadbalancer TEST and it has only one node called NODE1 NameTypeHostAddrAct State D F M V Acc Err CE RE Wr Rd BusyMax Route RR Cd Rs [E|R] NODE1 ajp13 10.0.0.112:8109 10.0.0.112:8109 STP OK/IDLE 0 1 1 0 0 0 0 0 0 0 0 0 NODE1 WwwNODE1Com 0/0 Then I would call the following url to Activate the node. http://localhost/jkmanager/?cmd=updatemime=txtw=TESTatt=waNODE1=activate This would result in Result: type=OK message=Action finished But the node does not get activated. Please advice. Thanks and regards Mohan Rainer Jung-3 wrote: Mladen Turk wrote: Mohan2005 wrote: On the same front, say we have 50 nodes and one jkmanager. There would be a management problem to disable/activate nodes. Is there a way to disable/activate nodes passing URL parameters to jkmanager ? No, but that's a good idea to put a wildchar processing for worker names (same rules as for JkMount) I would suggest you fill in the bugzilla enhancement request for Native:JK component at: https://issues.apache.org/bugzilla/enter_bug.cgi?product=Tomcat%206 Yes, please add an issue about status worker and using patterns for worker and sub worker. In the meantime, you can try to automate the activation setting for multiple workers by using a script. The details for the status worker URL arguments can be found on the page http://tomcat.apache.org/connectors-doc/reference/status.html#Request%20Parameters and you can always check, which URLs get used by interactive usage, because we never use POST. Examples: cmd=update mime=txt w=myloadbalancer sw=memberofloadbalancer wa=disabled Mass editing of one attribute for all sub workers (also called edit by aspect) could be done via cmd=update mime=txt w=myloadbalancer att=wa val1=disabled val2=active val3=disabled val4=disabled val5=active Of course this only works as long as the URL doesn't get to long. There's no guarantee about the order of the sub workers though, so you first need to check the order resulting from your config in the GUI of the status worker. Regards, Rainer - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- View this message in context: http://www.nabble.com/jkmanager-node-limitation-tp17720375p17769461.html Sent from the Tomcat - User mailing list archive at Nabble.com. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: jkmanager node limitation
Thank you. Mladen Turk-4 wrote: Mohan2005 wrote: Hello All; Can you please tell me the maximum number of nodes a JkManager can handle without any issues ? Theoretically unlimited, but number of workers is defined by int, thus 2^31 - 1, for 32-bit integer systems. Each node consumes around 1K of data so multiply that by the number of nodes and number of child processes, and you'll get a rough estimate about configuration footprint. JkManager uses table scan for finding nodes (workers), so it's O(n). However this is still much faster then any database like structure, because this data is in shared memory. In general, the size what jkmanager can handle will be the last thing you'll need to worry about. Regards -- ^(TM) - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- View this message in context: http://www.nabble.com/jkmanager-node-limitation-tp17720375p17732214.html Sent from the Tomcat - User mailing list archive at Nabble.com. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
jkmanager node limitation
Hello All; Can you please tell me the maximum number of nodes a JkManager can handle without any issues ? Assume a Quad-Core large memory system. Thanks and Regards Mohan -- View this message in context: http://www.nabble.com/jkmanager-node-limitation-tp17720375p17720375.html Sent from the Tomcat - User mailing list archive at Nabble.com. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Getting CPU Usage of JVM using SNMP
Hello All; I can get the JVM memory information using the following SNMP commands. /usr/bin/snmpwalk -c public -v 2c 172.10.1.11:3000 .1.3.6.1.4.1.42.2.145.3.163.1.1.2.110.1.2 SNMPv2-SMI::enterprises.42.2.145.3.163.1.1.2.110.1.2.1 = STRING: Code Cache SNMPv2-SMI::enterprises.42.2.145.3.163.1.1.2.110.1.2.2 = STRING: PS Eden Space SNMPv2-SMI::enterprises.42.2.145.3.163.1.1.2.110.1.2.3 = STRING: PS Survivor Space SNMPv2-SMI::enterprises.42.2.145.3.163.1.1.2.110.1.2.4 = STRING: PS Old Gen SNMPv2-SMI::enterprises.42.2.145.3.163.1.1.2.110.1.2.5 = STRING: PS Perm Gen /usr/bin/snmpwalk -c public -v 2c 172.10.1.11:3000 .1.3.6.1.4.1.42.2.145.3.163.1.1.2.110.1.11 SNMPv2-SMI::enterprises.42.2.145.3.163.1.1.2.110.1.11.1 = Counter64: 11676480 SNMPv2-SMI::enterprises.42.2.145.3.163.1.1.2.110.1.11.2 = Counter64: 95143168 SNMPv2-SMI::enterprises.42.2.145.3.163.1.1.2.110.1.11.3 = Counter64: 3351432 SNMPv2-SMI::enterprises.42.2.145.3.163.1.1.2.110.1.11.4 = Counter64: 345422296 SNMPv2-SMI::enterprises.42.2.145.3.163.1.1.2.110.1.11.5 = Counter64: 119718616 Is there a way to get the CPU information for the JVM in a similar manner ? Thanks Regards Mohan -- View this message in context: http://www.nabble.com/Getting-CPU-Usage-of-JVM-using-SNMP-tp15607272p15607272.html Sent from the Tomcat - User mailing list archive at Nabble.com. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Can we use the balance_members attribute
Thank you. So the only way you can do domain wide fail-over is by using the domain name given in worker.node1.domain=A in the Jboss server.xml's jvmRoute ? And there are no attributes in the workers.property file to do that ? Regards Mohan Mohan2005 wrote: Hello I saw this in http://people.apache.org/~mturk/docs/article/ftwai.html But does not see the balance_members attribute in workers.properties documentation. Is it valid ? worker.node1.type=ajp13 worker.node1.host=10.0.0.10 worker.node1.lbfactor=1 worker.node2.type=ajp13 worker.node2.host=10.0.0.11 worker.node2.lbfactor=2 worker.node3.type=ajp13 worker.node3.host=10.0.0.12 worker.node3.lbfactor=1 worker.list=lbworker worker.lbworker.type=lb worker.lbworker.balance_members=node1,node2,node3 Thanks Regards Mohan -- View this message in context: http://www.nabble.com/Can-we-use-the-balance_members-attribute-tp14871671p14883389.html Sent from the Tomcat - User mailing list archive at Nabble.com. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Can we use the balance_members attribute
Hello I saw this in http://people.apache.org/~mturk/docs/article/ftwai.html But does not see the balance_members attribute in workers.properties documentation. Is it valid ? worker.node1.type=ajp13 worker.node1.host=10.0.0.10 worker.node1.lbfactor=1 worker.node2.type=ajp13 worker.node2.host=10.0.0.11 worker.node2.lbfactor=2 worker.node3.type=ajp13 worker.node3.host=10.0.0.12 worker.node3.lbfactor=1 worker.list=lbworker worker.lbworker.type=lb worker.lbworker.balance_members=node1,node2,node3 Thanks Regards Mohan -- View this message in context: http://www.nabble.com/Can-we-use-the-balance_members-attribute-tp14871671p14871671.html Sent from the Tomcat - User mailing list archive at Nabble.com. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Busyness Method and others...
Hello Rainer; Thanks again for taking the time and for the information. if I quote you Who told you that? cping/cpong have nothing to do with load decisions. They only help in deciding, if a worker is in error status or not. Load is distributed between all nodes that are not in error. To which of those nodes a request goes is not decided by cping cpong. But the million dollar question :-) is , if cping,cpong does not determine a nodes HEALTH OR LOAD as you put it, how is the LOAD on a node determined (what is used to monitor the health/load of nodes) technically by the methods please? Thanks and Best Regards Mohan Rainer Jung-3 wrote: Mohan2005 schrieb: Hello! The documentation says the following on the Busyness Method... QUOTE If set to B[usyness] the balancer will pick the worker with the lowest current load, based on how many requests the worker is currently serving. This number is divided by the workers lbfactor, and the lowest value (least busy) worker is picked. This method is especially interesting, if your request take a long time to process, like for a download application. END QUOTE What is defined as take a long time, is it 30 sec, 40 sec, or more ? Let us rephrase this. Busyness is especially useful, if the number of parallel requests you can handle is your limiting factor. Suppose you need to handle very high concurrency, like e.g. 10.000 parallel requests. Then you might come close to how many connections your components (OS, web server, Tomcat, etc.) can handle and you need to balance with respect to the expensive ressource connections instead of CPU etc. Now how does parallelity relate to long running requests? Parallelity = Throughput * ResponseTime So given some fixed throughput, parallelity grows proportional to reponse times. Talking about long response times is thus a simplified rephrasing of talking about high concurrency. If you have 10 request per second (not a high load), but the response time is 5 minutes, then you will end up with about 3.000 parallel requests and this could be a good scenario for busyness method. and from the clarifications I have got from this forum, the nodes load is determined by it network latency using cping and cping. These I believe are Who told you that? cping/cpong have nothing to do with load decisions. They only help in deciding, if a worker is in error status or not. Load is distributed between all nodes that are not in error. To which of those nodes a request goes is not decided by cping cpong. used by all load-balancer methods to determine a nodes health. So checking the Requested hits (Acc in jkmanager) or Busy (Busy in jkmanager) or the Traffic are just checking the counters of a node that is more active than the other nodes. Essentially what all these methods does is check a node's health by cping, cping (Network latency) , and if it responds in good time, then check either yes the 'Acc', 'Busy' or 'Traffic' counters and send to the node with least 'Acc' if 'Request' method is used or Busy if 'Busy' method is used or Bytes IN/OUT if Traffic method is used. yes Is this summary of mod_jk in non-technical perspective accurate ?? Thanks Regards Mohan Regards, Rainer - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- View this message in context: http://www.nabble.com/Busyness-Method-and-others...-tp14690721p14712091.html Sent from the Tomcat - User mailing list archive at Nabble.com. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Busyness Method and others...
Great information. This was what we were looking for. This will help us a lot in future changes to our cluster and node infrastructure. Thank you very much. Regards Mohan Rainer Jung-3 wrote: Mohan2005 wrote: Hello Rainer; Thanks again for taking the time and for the information. if I quote you Who told you that? cping/cpong have nothing to do with load decisions. They only help in deciding, if a worker is in error status or not. Load is distributed between all nodes that are not in error. To which of those nodes a request goes is not decided by cping cpong. But the million dollar question :-) is , if cping,cpong does not determine a nodes HEALTH OR LOAD as you put it, how is the LOAD on a node determined It *does* influence Health status, but not load status. (what is used to monitor the health/load of nodes) technically by the Health: independant of method. Always: timeouts (if configured, socket_timeout, cping/cpong=connect_timeout and prepost_timeout, response time=reply_timeout, max_reply_timeouts, fail_on_status, recovery_options, see http://tomcat.apache.org/connectors-doc/reference/workers.html For all healthy ones: if lb has sticky_sessions and there is a session with a route coming with the request, do not balance but use the best worker w.r.t the session (but only from the healthy ones): The result is influenced by activation, the worker name, route, redirect, domain (and I think distance). If sticky, but all allowed workers are not healthy and sticky_session_force: error Else or if not sticky: pure balancing (between the healthy workers) influenced by activation, and lb_factor. Balancing itself choses the worker with the lowest lb_value. How do we get an lb_value. I cite myself: === - method Request (default): increase the load value of a worker by one for each request send to the worker and divide by two all load values every now and then (app. once a minute). So the load value is the comulative number of requests handled by the worker with a envelope curve that counts older requests less than more recent ones. This method tries to keep total work balanced. - method Session: the same as Request, but do only count a request, if it didn't contain a session cookie or URL encoded session. It is not the same as actually knowing how many sessions each backend has. - method Busyness: load value is the number of requests currently being processed by a worker. For example when load is low, most or all workers will have load value 0. This method tries to keep concurrency balanced. It will not be good in balancing total work. === and finally (I forgot in the original mail) - method Traffic: Like request, but for each request do not increment by one, instead increment by the number of bytes transferred to the backend for the request plus receuved from the backend with the response. methods please? Thanks and Best Regards Mohan Regards, Rainer Rainer Jung-3 wrote: Mohan2005 schrieb: Hello! The documentation says the following on the Busyness Method... QUOTE If set to B[usyness] the balancer will pick the worker with the lowest current load, based on how many requests the worker is currently serving. This number is divided by the workers lbfactor, and the lowest value (least busy) worker is picked. This method is especially interesting, if your request take a long time to process, like for a download application. END QUOTE What is defined as take a long time, is it 30 sec, 40 sec, or more ? Let us rephrase this. Busyness is especially useful, if the number of parallel requests you can handle is your limiting factor. Suppose you need to handle very high concurrency, like e.g. 10.000 parallel requests. Then you might come close to how many connections your components (OS, web server, Tomcat, etc.) can handle and you need to balance with respect to the expensive ressource connections instead of CPU etc. Now how does parallelity relate to long running requests? Parallelity = Throughput * ResponseTime So given some fixed throughput, parallelity grows proportional to reponse times. Talking about long response times is thus a simplified rephrasing of talking about high concurrency. If you have 10 request per second (not a high load), but the response time is 5 minutes, then you will end up with about 3.000 parallel requests and this could be a good scenario for busyness method. and from the clarifications I have got from this forum, the nodes load is determined by it network latency using cping and cping. These I believe are Who told you that? cping/cpong have nothing to do with load decisions. They only help in deciding, if a worker is in error status or not. Load is distributed between all nodes that are not in error. To which of those nodes a request goes is not decided by cping cpong. used by all load
Busyness Method and others...
Hello! The documentation says the following on the Busyness Method... QUOTE If set to B[usyness] the balancer will pick the worker with the lowest current load, based on how many requests the worker is currently serving. This number is divided by the workers lbfactor, and the lowest value (least busy) worker is picked. This method is especially interesting, if your request take a long time to process, like for a download application. END QUOTE What is defined as take a long time, is it 30 sec, 40 sec, or more ? and from the clarifications I have got from this forum, the nodes load is determined by it network latency using cping and cping. These I believe are used by all load-balancer methods to determine a nodes health. So checking the Requested hits (Acc in jkmanager) or Busy (Busy in jkmanager) or the Traffic are just checking the counters of a node that is more active than the other nodes. Essentially what all these methods does is check a node's health by cping, cping (Network latency) , and if it responds in good time, then check either the 'Acc', 'Busy' or 'Traffic' counters and send to the node with least 'Acc' if 'Request' method is used or Busy if 'Busy' method is used or Bytes IN/OUT if Traffic method is used. Is this summary of mod_jk in non-technical perspective accurate ?? Thanks Regards Mohan -- View this message in context: http://www.nabble.com/Busyness-Method-and-others...-tp14690721p14690721.html Sent from the Tomcat - User mailing list archive at Nabble.com. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: mod_jk Busyness algorithm and Node Health Check
Hello Rainer; Thanks. So if I have it right, sorry if I keep repeating whats been stated already, all the load-balancer algorithms are not really checking node health as in JVM Memory usage, CPU usage or Threads used at any given time (which I believe is a feature in a future mod_jk ? ), Only checks the Network Latency (Network Response ) through Cping and Cpong methods as a nodes health as described in http://tomcat.apache.org/connectors-doc/generic_howto/timeouts.html Regards Mohan Rainer Jung-3 wrote: Hi Mohan, Mohan2005 schrieb: Dear All; If I am not wrong, the Busyness algorithm routes requests to workers by checking their Health What criteria constitutes as a nodes Health and if so, How is it determined (using the native JVM or else ) All balancing methods of mod_jk share common aspects: 1) Don't send requests to workers, which are in error Workers go into error state, whenever mod_jk detects a failure during request processing with that worker. Which failures depends on the jk configuration. Mostly they are timeouts and network problems. 2) Use stickyness instead of load based balancing if not disabled 3) Decide about requests without sessions based on the load value of the workers, which are not in error What's the load value? That depends on the balancing method. - method Request (default): increase the load value of a worker by one for each request send to the worker and divide by two all load values every now and then (app. once a minute). So the load value is the comulative number of requests handled by the worker with a envelope curve that counts older requests less than more recent ones. This method tries to keep total work balanced. - method Session: the same as Request, but do only count a request, if it didn't contain a session cookie or URL encoded session. It is not the same as actually knowing how many sessions each backend has. - method Busyness: load value is the number of requests currently being processed by a worker. For example when load is low, most or all workers will have load value 0. This method tries to keep concurrency balanced. It will not be good in balancing total work. So: the health aspect is not special to method Busyness. One could argue, that if one node gets slow, the concurrency will go up soon, so Busyness includes a good prevention for overload. On the other hand, using Request with a reply_timeout will also lead to such a prevention, because then a node that has overload will be put temporarily into error state. Mod_jk has no internal knowledge of the backends state, like Memory, Thread counts etc. It can only judge by the symptoms observed during the response handling (no connect possible, no cpong answer to a cping, response took longer than reply_timeout etc.). Whenever such a type of error is detected, the jk log should contain an error log line with an indication of the type of error. With JkLogLevel info you might get (info) log lines even if there is no hard error, but in case of a real error, you will get additional information about the root cause. Thanks you Regards Mohan Regards, Rainer - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- View this message in context: http://www.nabble.com/mod_jk--%22Busyness%22-algorithm-and-Node-Health-Check-tp14650298p14663038.html Sent from the Tomcat - User mailing list archive at Nabble.com. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
mod_jk Busyness algorithm and Node Health Check
Dear All; If I am not wrong, the Busyness algorithm routes requests to workers by checking their Health What criteria constitutes as a nodes Health and if so, How is it determined (using the native JVM or else ) Thanks you Regards Mohan -- View this message in context: http://www.nabble.com/mod_jk--%22Busyness%22-algorithm-and-Node-Health-Check-tp14650298p14650298.html Sent from the Tomcat - User mailing list archive at Nabble.com. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: clarification of server.xml settings for AJP 1.3 Thread Limit
Thanks David, yes we experimented with JKumount in apache config, and it works fine. the issue was we had a lot of paths to be set, but were able to get away with the * character. may be the issue of sending all that static page traffic over the AJP13 (mod_jk) AKA load-balancer was the imminent small packet size of the protocol. also although we suspected the thread limitation was a issue, we did not come across seeing a large number of threads opening at the same time. does this make sense ? ajp is meant to server small java scripts and jsp pages ? thanks all for your help. regards mohan David Cassidy wrote: Mohan, You can use apache to serve all the static objects without the requests going anywhere near jboss / tomcat. Have a *careful* look at the JkMount command and look carefully at your url-patterns that your application uses. D On Wed, 2008-01-02 at 11:12 -0800, Mohan2005 wrote: thank you. we will look into this. Caldarale, Charles R wrote: From: Mohan2005 [mailto:[EMAIL PROTECTED] Subject: Re: clarification of server.xml settings for AJP 1.3 Thread Limit on jboss side server.xml file, we wish to increase the maximum THREAD count for the AJP 1.3 connector port 8009; Which parameter is used to do this ? What do the docs say? http://tomcat.apache.org/tomcat-6.0-doc/config/ajp.html Earlier we used the Apache front end to render all static pages such as image files, php files etc... Now we cannot do that, AS FAR AS WE KNOW, as j2ee does not allow it. Where in the J2EE specs did you find that restriction? - Chuck THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- View this message in context: http://www.nabble.com/clarification-of-server.xml-settings-for-AJP-1.3-Thread-Limit-tp14581745p14650387.html Sent from the Tomcat - User mailing list archive at Nabble.com. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: clarification of server.xml settings for AJP 1.3 Thread Limit
Thank you very much. We will try this, and inquire further if we run into complications. On Question Once; To increase maximum thread limit for AJP 1.3 on jboss's server.xml Is it MaxThreads or MaxProcessors please ? Thanks and Regards Mohan Rainer Jung-3 wrote: Mohan2005 schrieb: Question 02 Recently we have made our jboss servers j2ee compliant, earlier it was not. Earlier we used the Apache front end to render all static pages such as image files, php files etc... Now we cannot do that, AS FAR AS WE KNOW, as j2ee does not allow it. So we render everything from the jboss servers. This has taxed our jboss servers and Apache is basically idle only doing mod_jk load balancing while un-mounting all jpeg, gif, etc... files. Is there a way we can have J2EE and have ONLY Apache render these static pages ? If you can describe in terms of URL prefixes and/or suffixes, which URLs belong to static content, you can do that by deploying a copy of the static content on the web server and using corresponding URL patterns in JkMount and JkUnMount. Thanks in Advance Reg mohan Regards, Rainer - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- View this message in context: http://www.nabble.com/clarification-of-server.xml-settings-for-AJP-1.3-Thread-Limit-tp14581745p14582636.html Sent from the Tomcat - User mailing list archive at Nabble.com. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: clarification of server.xml settings for AJP 1.3 Thread Limit
thank you. we will look into this. Caldarale, Charles R wrote: From: Mohan2005 [mailto:[EMAIL PROTECTED] Subject: Re: clarification of server.xml settings for AJP 1.3 Thread Limit on jboss side server.xml file, we wish to increase the maximum THREAD count for the AJP 1.3 connector port 8009; Which parameter is used to do this ? What do the docs say? http://tomcat.apache.org/tomcat-6.0-doc/config/ajp.html Earlier we used the Apache front end to render all static pages such as image files, php files etc... Now we cannot do that, AS FAR AS WE KNOW, as j2ee does not allow it. Where in the J2EE specs did you find that restriction? - Chuck THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- View this message in context: http://www.nabble.com/clarification-of-server.xml-settings-for-AJP-1.3-Thread-Limit-tp14581745p14584123.html Sent from the Tomcat - User mailing list archive at Nabble.com. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Tomcat with 8 GB memory
so now we have to identify if our application is 64bit compatible or 32bit compatible. would not this be a very difficult situation as far as porting to 64bit is concerned? Andrew Miehs wrote: On 29/07/2007, at 9:08 PM, David Smith wrote: ...but people advice that 64bit are 20 - 30% slower than the 32bit ... Could these people offer any evidence to this? Cite any benchmarks? I would like to see the evidence of this before believing it to be true. We did test with out application - (running more than 10 tomcats using F5s for Load balancing) and came to the belief that we could deal with 15% more users online at the same time. As I said, though, this was OUR application - maybe yours is different... For our purposes however we also found Intel 5160s packed more punch per $ than AMD Opterons - (Thankfully we don't have to worry about paying the power bills in our colocation)... Cheers Andrew - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- View this message in context: http://www.nabble.com/Tomcat-with-8-GB-memory-tf4149367.html#a11922831 Sent from the Tomcat - User mailing list archive at Nabble.com. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Tomcat with 8 GB memory
thanks for the clarifications. Peter Stavrinides wrote: This is really not true, (unless the machine in question is more than four years then performance is faster for some operations and slower for others), with a new machine you will gain. Mohan2005 wrote: Hello: we also wish to convert out 32bit dual cores to 64bit dual cores to run java applications (multiple instances with large JVM memory) but people advice that 64bit are 20 - 30% slower than the 32bit with smaller JVM. why? and if true how to overcome?? thanks Peter Stavrinides wrote: Some of arguments presented hold some truths, but look at the bigger picture... the point is that 64bit is a superior architecture to 32 bit, but it is still maturing... the reasons for this are both hardware and software related... the way we write programs will have to change to take advantage of the new architecture, and the current generation of hardware will no doubt mature to realize the potential of 64bit architecture. 32 bits processors can represent numbers up to 4,294,967,295 while a 64-bit machine can represent numbers up to 18,446,744,073,709,551,615. For modern hardware to take advantage of the processing power of the 64 bit architecture a system must have a minimum 4GB Ram, but probably needs significantly more and more importantly the CAPACITY to take full advantage of it, allocating it to running processes, with less there is potential for lag. 64bit machines have been around since the 60's but only now are software and hardware vendors supporting it for the mainstream market. So is 64bit better than 32bit right now? the answer is yes, a 64-bit processor has more technology, a better design with more transistors, thus faster speeds are possible. This is currently where the true benefit of switching to a 64-bit processor lays, it has nothing to do with the memory address space, which is exactly that, just space for more complex computations. Peter Alexey Solofnenko wrote: No, each of two 4GB processes will have only a half of the objects under the same load. And I heard that GC does not scale linear with heap size. And this is without multi-threading performance considerations. As usual, your mileage may vary and only tests can tell for sure. - Alexey. Caldarale, Charles R wrote: From: Alexey Solofnenko [mailto:[EMAIL PROTECTED] Subject: Re: Tomcat with 8 GB memory I was under impression that GC does not scale linearly. That means one 8GB process will be slower than two 4GB processes. Not true. The time of a full GC using modern algorithms depends mostly on the number and type of live objects, not the amount of heap space. The number and type of live (reachable) objects stays relatively constant for most application once the ramp-up period is over. Consequently, running a single JVM with the largest heap you can fit in the process space is the most efficient from a GC point of view. (Of course, there are plenty of other reasons not to put all your eggs in one basket.) - Chuck THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Peter Stavrinides Albourne Partners (Cyprus) Ltd Tel: +357 22 750652 If you are not an intended recipient of this e-mail, please notify the sender, delete it and do not read, act upon, print, disclose, copy, retain or redistribute it. Please visit http://www.albourne.com/email.html for important additional terms relating to this e-mail. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Peter Stavrinides Albourne Partners (Cyprus) Ltd Tel: +357 22 750652 If you are not an intended recipient of this e-mail, please notify the sender, delete it and do not read, act upon, print, disclose, copy, retain or redistribute it. Please visit http://www.albourne.com/email.html for important additional terms relating to this e-mail. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- View this message in context: http://www.nabble.com/Tomcat-with-8-GB-memory-tf4149367.html#a11917676 Sent from the Tomcat - User mailing list archive at Nabble.com
Re: Tomcat with 8 GB memory
thanks for the clarifications. ronatartifact wrote: If you read the references that I posted, you will see when 32 bit is faster than 64 bit. You are not the first guy to ask the question so Microsoft did a pretty nice test. Why is no major hardware vendor selling 32 bit servers for business applications? If 32 bit was faster, cheaper and they already have lots of chips and manufacturing infrastructure, the guy selling 32 bit servers would be killing the rest of the vendors in sales and profits. HP is not going to spend billions to put out a product line that can not compete with IBM's old servers and is slower than HP's existing products. Mohan2005 wrote: Hello: we also wish to convert out 32bit dual cores to 64bit dual cores to run java applications (multiple instances with large JVM memory) but people advice that 64bit are 20 - 30% slower than the 32bit with smaller JVM. why? and if true how to overcome?? thanks Just ignore the these people. They are talking through their hats or about some weird example that does not reflect servlet engine performance except at low volumes. There is some overhead in handling big address spaces. Everyone knows that it takes a lot longer to format a 320Gb drive than an 80 GB drive but if you could get either for the same price, you would take the big drive MOST of the time. Anyone who buys a dedicated server with 4 GB of memory to run Tomcat under 32 bit Windows OS where the space available is only 2GB, is being silly. If you want to go past 2GB, you need to be fully 64bit compatible right up through the whole stack. You do need to run a 64 bit OS and a 64 bit JVM to get the advantages of 64 bit memory addressing capability. The Microsoft study used Websphere which I understand to be very close to Tomcat. If this were not a Tomcat forum but was oriented to engineering simulations, we would be carrying on about floating-point arithmetic advantages of a machine that has 64 bit internal data paths. For Tomcat is is all about address space for caching user requests and responses and back-end transactions. It is getting the right hardware and software architecture to use the entire RAM optimally for serving web pages. Ron - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- View this message in context: http://www.nabble.com/Tomcat-with-8-GB-memory-tf4149367.html#a11917677 Sent from the Tomcat - User mailing list archive at Nabble.com. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
connectionTimeout for AJP 1.3 in server.xml
Hello In the server.xml There is no connection timeout value set What is the default value ? Should the value that is set here be equal to the value connection_pool_timeout set in workers.properties file ? And what is the value set here..also in server.xml Your reply is much appreciated Mohan -- View this message in context: http://www.nabble.com/connectionTimeout-for-AJP-1.3-in-server.xml-tf3028693.html#a8414904 Sent from the Tomcat - User mailing list archive at Nabble.com.
Re: problems with connector
Hi; just to give my 2-cents as a mod_jk user, i had a similar problem where mod_jk and tomcat was working ok, and apache was also working ok, but sending blank pages to the user. noticed the mod_jk log had grown to over 3GB in size, then deleted and restarted services and started working fine. later implemented a method to rotate mod_jk log at 200MB. Enrico Donelli wrote: Thanks a lot for your help Rainer, I really appreciate. From time to time (every couple of weeks) the connector completely hangs apache. Tomcat alone is still alive, but apache no longer replies to requests, and I need to restart both Now it's working properly, but there are still many error in log files: [Sat Nov 18 22:43:13 2006] [28124:7072] [error] ajp_connection_tcp_send_message::jk_ajp_common.c (914): sendfull returned -32 with errno=32 [Sat Nov 18 22:43:13 2006] [28124:7072] [info] ajp_send_request::jk_ajp_common.c (1194): (ajp13) error sending request. Will try another pooled connection or [Sat Nov 18 22:08:36 2006] [27825:7072] [info] ajp_process_callback::jk_ajp_common.c (1410): Writing to client aborted or client network problems [Sat Nov 18 22:08:36 2006] [27825:7072] [info] ajp_service::jk_ajp_common.c (1795): (ajp13) request failed, because of client write error without recovery in send loop attempt=0 [Sat Nov 18 22:08:36 2006] ajp13 www.scandinaviadesign.it 24.124384 [Sat Nov 18 22:08:36 2006] [27825:7072] [info] jk_handler::mod_jk.c (2056): Aborting connection for worker=ajp13 Thanks again!!! Enrico On 18/11/06, Rainer Jung [EMAIL PROTECTED] wrote: Adding to my own comments: I think I found a problem. So one more question: Do you also observe a real problem, or only the info log messages. Do the requests actually fail? Regards, Rainer Enrico Donelli schrieb: Thanks Rainer for your reply! Here's my mod_jk.conf I solved my previous error adding the directive JkShmFile /var/log/apache2/mod_jk.shm (see later the copy of the file) Now I have different errors: [Sat Nov 18 09:27:57 2006] [16854:7072] [info] ajp_send_request::jk_ajp_common.c (1170): (ajp13) socket 33 is not connected any more (errno=11) [Sat Nov 18 09:27:57 2006] [16854:7072] [info] ajp_send_request::jk_ajp_common.c (1194): (ajp13) error sending request. Will try another pooled connection [Sat Nov 18 09:27:57 2006] [16854:7072] [info] ajp_send_request::jk_ajp_common.c (1218): (ajp13) all endpoints are disconnected or dead [Sat Nov 18 09:27:57 2006] [16854:7072] [info] ajp_service::jk_ajp_common.c (1867): (ajp13) sending request to tomcat failed, recoverable operation attempt=1 What do they mean? I'm using versions mod_jk/1.2.19 Apache/2.0.54 tomcat/5.5.20 Thanks again!! Enrico # === # mod_jk.conf # Load mod_jk module LoadModulejk_module /usr/lib/apache2/modules/mod_jk.so # Declare the module for IfModule directive (remove this line on Apache 2.0.x) #AddModule mod_jk.c # Where to find workers.properties JkWorkersFile /etc/apache2/workers.properties # Where to put jk logs JkLogFile /var/log/apache2/mod_jk.log JkShmFile /var/log/apache2/mod_jk.shm # Set the jk log level [debug/error/info] JkLogLevelinfo # Select the log format JkLogStampFormat [%a %b %d %H:%M:%S %Y] # JkOptions indicate to send SSL KEY SIZE, JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories # JkRequestLogFormat set the request format JkRequestLogFormat %w %V %T # Send servlet for context /examples to worker named worker1 #JkMount /examples/servlet/* worker1 # Send JSPs for context /examples to worker named worker1 #== workers.properties = workers.tomcat_home=/tomcat/dir workers.java_home=/opt/jdk ps=/ worker.list=ajp13 worker.ajp12.port=8007 worker.ajp12.host=localhost worker.ajp12.type=ajp12 worker.ajp12.lbfactor=1 worker.ajp13.port=8009 worker.ajp13.host=localhost worker.ajp13.type=ajp13 worker.ajp13.lbfactor=1 #worker.ajp13.connection_pool_size worker.loadbalancer.type=lb worker.loadbalancer.balance_workers=ajp12, ajp13 worker.inprocess.type=jni On 17/11/06, Rainer Jung [EMAIL PROTECTED] wrote: Please give details on your mod_jk version and concerning your configuration (mod_jk config inside httpd.conf and workers.properties). Errno 2 looks line not such file or directory. So does /etc/apache2/logs/jk-runtime-status exist as a file and is the apache user allowed to write into it. Does the directory /etc/apache2/logs exist and again, does the apache user have write permissions there? Does the log message already show, when you are starting? If yes, could you reproduce with JkLogLevel trace and provide the resulting file? Regards, Rainer Enrico Donelli schrieb: Hi all,
mod_jk stable version - numbering
Is there a numbering scheme used when releasing mod_jk stable versions? For example, some software releases use EVEN numbers as STABLE releases and ODD numbers as UNSTABLE releases. Example: 1.2.18 - stable release 1.2.19 - unstable release thanks in advance mohan -- View this message in context: http://www.nabble.com/mod_jk-stable-version---numbering-tf2394147.html#a6675340 Sent from the Tomcat - User mailing list archive at Nabble.com. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: mod_jk stable version - numbering
thanks for response. Mladen Turk-2 wrote: Mohan2005 wrote: Is there a numbering scheme used when releasing mod_jk stable versions? No. We tried that more then a year ago, but then decide not to. For example, some software releases use EVEN numbers as STABLE releases and ODD numbers as UNSTABLE releases. Example: 1.2.18 - stable release 1.2.19 - unstable release We follow the same system as Apache Tomcat does, and IMHO the rest of ASF projects. - Someone from committers applies to act as RM. - The release gets proposed on the developers list. - If there are no objections the release gets tagged. - Usually a week after that we have a VOTE. - RM releases the version. Regards, Mladen. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- View this message in context: http://www.nabble.com/mod_jk-stable-version---numbering-tf2394147.html#a6676266 Sent from the Tomcat - User mailing list archive at Nabble.com. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: serious load balancing issue with 'B' load balancer method
Hi All: In this case, it is advisable to revert back to the default load balancer method (R) ? Please advice. Regards Mohan Mohan2005 wrote: Hi all: After running and collecting jkmanager statistics we noticed that one of many nodes are not getting any are hardly any requests at some time. and seems have got ignored by the 'Busyness' lb method. Then we restart web server and things start working again. After some accumulation (which works accordingly, distributing hits evenly at the end of the day, but at some point a different node this time is staying idle while others are moving forward. Any ideas why this is ?? Greatly appreciate ant ideas. we have 1.2.18 Regards mohan -- View this message in context: http://www.nabble.com/serious-load-balancing-issue-with-%27B%27-load-balancer-method-tf2122515.html#a5866788 Sent from the Tomcat - User forum at Nabble.com. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Mod_jk load balacing algorithm
Hello: Thanks for those explainations. We will have to look further on the behavior of that server3_1 node. On the 'P' option which was recommended by Mladen Turk some time ago when we had issues (share memory locking) with a older version of mod_jk ( 1.2.15), we have left it as it is. But if you recommend that 'O' locking gives better performance on new mod_jk versions we will be looking into changing it after testing under our applications. Thanks -- View this message in context: http://www.nabble.com/Mod_jk-load-balacing-algorithm-tf2064844.html#a5701834 Sent from the Tomcat - User forum at Nabble.com. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Mod_jk load balacing algorithm
Hello Thaks. We will enable loggin to find this, but since its a production setup will it affect performance ? This is a set of stats. Apache was running for 3 weeks. (Hope this is clear) mod_jk 1.2.18 with Busyness and sticky sessions (all nodes are identicical). Name Type jvmRoute Host Addr Stat D F M V Acc Err Wr Rd Busy Max RR Cd server1_1 ajp13 server1_1 172.16.1.138:8009 172.16.1.138:8009 OK 0 1 1 1 181792 22 152M 16G 139 WwwGroupServer1Com server2_1 ajp13 server2_1 172.16.1.139:8009 172.16.1.139:8009 OK 0 1 1 3 218096 37 185M 18G 3130WwwGroupServer2Com server3_1 ajp13 server3_1 172.16.1.135:8009 172.16.1.135:8009 OK 0 1 1 1 32348 1 29M 2.8G 036 WwwGroupServer3Com server4_1 ajp13 server4_1 172.16.1.140:8009 172.16.1.140:8009 OK 0 1 1 1 192940 23 164M 16G 027 WwwGroupServer4Com server2_2 ajp13 server2_2 172.16.1.139:18009 172.16.1.139:18009 OK 0 1 1 1 209807 33 178M 17G 138 WwwGroupServer2Com server3_2 ajp13 server3_2 172.16.1.135:18009 172.16.1.135:18009 OK 0 1 1 1 208006 67 174M 18G 160 WwwGroupServer3Com server1_2 ajp13 server1_2 172.16.1.138:18009 172.16.1.138:18009 OK 0 1 1 1 148020 17 126M 13G 132 WwwGroupServer1Com server4_2 ajp13 server4_2 172.16.1.140:18009 172.16.1.140:18009 OK 0 1 1 2 203780 16 174M 17G 243 WwwGroupServer4Com server1_3 ajp13 server1_3 172.16.1.138:38009 172.16.1.138:38009 OK 0 1 1 0 178381 11 148M 15G 042 WwwGroupServer1Com server2_3 ajp13 server2_3 172.16.1.139:38009 172.16.1.139:38009 OK 0 1 1 0 196352 11 162M 16G 023 WwwGroupServer2Com server3_3 ajp13 server3_3 172.16.1.135:38009 172.16.1.135:38009 OK 0 1 1 5 184697 10 154M 16G 565 WwwGroupServer3Com server4_3 ajp13 server4_3 172.16.1.140:38009 172.16.1.140:38009 OK 0 1 1 0 175744 34 145M 14G 028 WwwGroupServer4Com In workers.properties... worker.loadbalancer.balance_workers=server1_1, server2_1, server3_1, server4_1, server2_2, server3_2, server1_2, server4_2, server1_3, server2_3, server3_3, server4_3 worker.loadbalancer.lock=P worker.loadbalancer.method=B worker.loadbalancer.local_worker_only=1 -- View this message in context: http://www.nabble.com/Mod_jk-load-balacing-algorithm-tf2064844.html#a5700083 Sent from the Tomcat - User forum at Nabble.com. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: were there any major issues with 1.2.17??
ok thanks -- View this message in context: http://www.nabble.com/were-there-any-major-issues-with-1.2.17---tf1993998.html#a5485855 Sent from the Tomcat - User forum at Nabble.com. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
were there any major issues with 1.2.17??
Dear All: Please clarify: We have used version 1.2.17 since its release for testing on linux platform. We are using the new 'Busysness' method. There were no noticeable issues. Why was 1.2.18 released ? Were there any issues related to Busyness method or 1.2.17 as a whole. Sorry for any inconvinience caused. -- View this message in context: http://www.nabble.com/were-there-any-major-issues-with-1.2.17---tf1993998.html#a5472583 Sent from the Tomcat - User forum at Nabble.com. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
'Update Worker' button with mod_jk 1.2.16
Dear All: The 'Udate Worker' button does not respond after installing mod_jk 1.2.16 It was working with 1.2.15 release. Thanks -- View this message in context: http://www.nabble.com/%27Update-Worker%27-button-with-mod_jk-1.2.16-tf1893298.html#a5177759 Sent from the Tomcat - User forum at Nabble.com. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: 'Update Worker' button with mod_jk 1.2.16
Dear Sir: Issue: 'Update Worker' does not respond/is hung when trying to use Disabled/Stopped options. workers.properties file as follows... # # workers.properties # # In Unix, we use forward slashes: ps=/ # list the workers by name #worker.list=lab2a, lab2b, lab2c, lab2d, lab2e, lab2e, loadbalancer worker.list=loadbalancer, jkstatus # # First JBoss server # worker.lab2a.port=8009 worker.lab2a.host=10.0.0.111 worker.lab2a.type=ajp13 # Specify the size of the open connection cache. worker.lab2a.connection_pool_size=1 worker.lab2a.retries=0 worker.lab2a.stopped=0 worker.lab2a.connection_pool_timeout=300 worker.lab2a.socket_timeout=60 worker.lab2a.domain=www-jbosslab2Adomain-com # # Specifies the load balance factor when used with # a load balancing worker. # Note: # lbfactor must be 0 # Low lbfactor means less work done by the worker. worker.lab2a.lbfactor=1 # # Second JBoss server # ... ... ... ... ... # # Load Balancer worker # # # The loadbalancer (type lb) worker performs weighted round-robin # load balancing with sticky sessions. # Note: # If a worker dies, the load balancer will check its state #once in a while. Until then all work is redirected to peer #worker. worker.loadbalancer.type=lb worker.loadbalancer.balance_workers=lab2a, lab2b, lab2c, lab2d, lab2e, lab2f worker.loadbalancer.local_worker_only=1 worker.sticky_session=1 worker.loadbalancer.lock=P worker.jkstatus.type=status # # END workers.properties # jkmanager web client output JK Status Manager for jbosslab2.roomstest.com Server Version: Apache/2.0.53 (Unix) mod_ssl/2.0.53 OpenSSL/0.9.7e PHP/5.0.3 mod_jk/1.2.16 JK Version: 1.2.16 Worker Status for loadbalancer Type Sticky session Force Sticky session Retries Method Lock lb True False 3 Request Pessimistic Name Type jvmRoute Host Addr Stat D F M V Acc Err Wr Rd Busy Max RR Cd lab2a ajp13 lab2a 10.0.0.111:8009 10.0.0.111:8009 OK 0 1 1 0 0 0 0 0 0 0 www-jbosslab2Adomain-com - mod_jk log at startup [EMAIL PROTECTED] conf]# /data/apache2/bin/apachectl start [EMAIL PROTECTED] conf]# tail -f /data/apache2/logs/mod_jk.log.2006-07-05.16\:23\:GMT [Wed Jul 05 22:23:29 2006] [32186:59616] [debug] ws_write::mod_jk.c (412): written 5 out of 5 [Wed Jul 05 22:23:29 2006] [32186:59616] [debug] ws_write::mod_jk.c (412): written 9 out of 9 [Wed Jul 05 22:23:29 2006] [32186:59616] [debug] ws_write::mod_jk.c (412): written 5 out of 5 [Wed Jul 05 22:23:29 2006] [32186:59616] [debug] ws_write::mod_jk.c (412): written 11 out of 11 [Wed Jul 05 22:23:29 2006] [32186:59616] [debug] ws_write::mod_jk.c (412): written 9 out of 9 [Wed Jul 05 22:23:29 2006] [32186:59616] [debug] ws_write::mod_jk.c (412): written 59 out of 59 [Wed Jul 05 22:23:29 2006] [32186:59616] [debug] wc_get_worker_for_name::jk_worker.c (111): found a worker jkstatus [Wed Jul 05 22:23:29 2006] [32186:59616] [debug] ws_write::mod_jk.c (412): written 891 out of 891 [Wed Jul 05 22:23:29 2006] [32186:59616] [debug] ws_write::mod_jk.c (412): written 16 out of 16 [Wed Jul 05 22:23:29 2006] [32186:59616] [debug] jk_handler::mod_jk.c (1962): Service finished with status=200 for worker=jkstatus mod_jk log when 'Update Worker' is pressed... [Wed Jul 05 22:29:03 2006] [24473:59616] [debug] map_uri_to_worker::jk_uri_worker_map.c (487): Attempting to map URI '/jklab2manager/' from 36 maps [Wed Jul 05 22:29:03 2006] [24473:59616] [debug] map_uri_to_worker::jk_uri_worker_map.c (499): Attempting to map context URI '/RoomsnetAdmin/*' [Wed Jul 05 22:29:03 2006] [24473:59616] [debug] map_uri_to_worker::jk_uri_worker_map.c (499): Attempting to map context URI '/jklab2manager/*' [Wed Jul 05 22:29:03 2006] [24473:59616] [debug] map_uri_to_worker::jk_uri_worker_map.c (513): Found a wildchar match jkstatus - /jklab2manager/* [Wed Jul 05 22:29:03 2006] [24473:59616] [debug] jk_handler::mod_jk.c (1832): Into handler jakarta-servlet worker=jkstatus r-proxyreq=0 [Wed Jul 05 22:29:03 2006] [24473:59616] [debug] wc_get_worker_for_name::jk_worker.c (111): found a worker jkstatus [Wed Jul 05 22:29:03 2006] [24473:59616] [debug] wc_maintain::jk_worker.c (301): Maintaining worker loadbalancer [Wed Jul 05 22:29:03 2006] [24473:59616] [debug] ajp_maintain::jk_ajp_common.c (2217): reached pool min size 0 from 1 cache slots [Wed Jul 05 22:29:03 2006] [24473:59616] [debug] ajp_maintain::jk_ajp_common.c (2225): recycled 0 sockets in 0 seconds from 1 pool slots [Wed Jul 05 22:29:03 2006] [24473:59616] [debug] ajp_maintain::jk_ajp_common.c (2217): reached pool min size 0 from 1 cache slots [Wed Jul 05 22:29:03 2006] [24473:59616] [debug]
RE: Busy in jkmanager
This is a good Idea. We already use Jmeter to test GC performance. thanks for the tip. but we have a variation of classes and customer behavious which is difficult to simulate with jmeter. we run load tests with one heavy class. -- View this message in context: http://www.nabble.com/%22Busy%22-in-jkmanager-tf1888108.html#a5186797 Sent from the Tomcat - User forum at Nabble.com. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: 'Update Worker' button with mod_jk 1.2.16
Dear Sir: I did this, recompiled and installed. Its working perfectly now. Thanks for the help. Since this version has fixed the 2^32 - 1 number in Busy column, is it safe to assume that the Busy number in the new version is dead accurate and can be used as a load balancing method 'B' without any fear :-) ? -- View this message in context: http://www.nabble.com/%27Update-Worker%27-button-with-mod_jk-1.2.16-tf1893298.html#a5193316 Sent from the Tomcat - User forum at Nabble.com. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Busy in jkmanager
Thank you very much for that answer. When you say 'Requests' does that mean the number of objects rendered through that particular tomcat node ? And how does the load balancing mechanism use the 'Busy' factor ? Thanks Mohan -- View this message in context: http://www.nabble.com/%22Busy%22-in-jkmanager-tf1888108.html#a5163963 Sent from the Tomcat - User forum at Nabble.com. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Busy in jkmanager
Hello again, According to the workers.properties document (http://tomcat.apache.org/connectors-doc/config/workers.html), Definition of 'method' says the following... Specifies what method load balancer is using for electing best worker. If method is set to R[equest] balancer will use number of requests to find the best worker. If set to T[raffic] balancer will use the network traffic between JK and Tomcat to find the best worker. If set to B[usyness] balancer will pick the worker with the lowest current load, based on how many requests the worker is currently serving. This number is divided by the workers lbfactor, and the lowest value (least busy) worker is picked. And from your previous post you said.. and I quote.. Busy=number of parallel requests being processed for a worker at that point of time. and where request = HTTP Request in progress Please clarify the difference between the 'Request' method and the 'Busy' method you had defined. This is very important for us, since we currently use the 'Request' method in workers.properties and we want to know the exact working of the 2 methods (Busy and Request). Since we plan on switching to a method that is best suited for performance and proper load balancing. Our main confusion here is that both the 'Request' and 'Busy' methods refer to the same criteria, which is Number of Requests' Thanks again. Mohan -- View this message in context: http://www.nabble.com/%22Busy%22-in-jkmanager-tf1888108.html#a5175444 Sent from the Tomcat - User forum at Nabble.com. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Busy in jkmanager
Dear All: Please explain what this Busy number is in jkmanager and its significance to the load balancer. Thanks in advance. Mohan -- View this message in context: http://www.nabble.com/%22Busy%22-in-jkmanager-tf1888108.html#a5162174 Sent from the Tomcat - User forum at Nabble.com.
Observation on Acc and Busy in jkmanager
Hello What is the connection between Busy and Acc in mod_jk ? We see that mod_jk tries to balance out Acc but Busy values are different. Is there any logic in the algorithm that monitors Busy values when taking load balancing decisions ? lbfactor=1 for 6 nodes with 2 groups (3 nodes per group) thanks -- View this message in context: http://www.nabble.com/Observation-on-Acc-and-Busy-in-jkmanager-t1548684.html#a4206875 Sent from the Tomcat - User forum at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: Recommended Specs for Oracle 10g db server
Thank you all kindly for these valuable comments and suggestions. I have notices somethings we have obvious problems and need to be addressed. We are running this 10g on a hardware RAID-5 array (SCSI). The 10g is at the backend of 12 tomcat servers load balanced thru a apache web server. Each tomcat has a max. connections of 40 simulataneously. As you have said we have identified few sql processes overloading the CPU's. However, we cannot move back to non HT technology as this is not provided at a HW level to us. So were either planning to go for a quad (HT) with lots more RAM so to increase SGA. Thanks again for your help. -- View this message in context: http://www.nabble.com/Recommended-Specs-for-Oracle-10g-db-server-t1340651.html#a3595161 Sent from the Tomcat - User forum at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: mod_jk settings for a large node cluster
any sugestions on this please ? -- View this message in context: http://www.nabble.com/mod_jk-settings-for-a-large-node-cluster-t1276978.html#a3585482 Sent from the Tomcat - User forum at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: mod_jk failover loadbalancing doesn't recognize hung tomcat
hi we has similar issue we did not mess with prepost values but changed locking method to pesimistic, and set socket_timeout to 60sec, recycle_time to 600sec and reply_timeout to 18(ms) these were recommended by Mladen Turk and now Busy connections are distributed among all nodes equally. -- View this message in context: http://www.nabble.com/question%3A-mod_jk-failover-loadbalancing-doesn%27t-recognize-hung-tomcat-t1328176.html#a3584689 Sent from the Tomcat - User forum at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]