You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by fh...@apache.org on 2006/07/05 22:30:14 UTC

svn commit: r419332 - in /tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes: io/ObjectReader.java transport/ReceiverBase.java transport/nio/NioReplicationThread.java

Author: fhanik
Date: Wed Jul  5 13:30:13 2006
New Revision: 419332

URL: http://svn.apache.org/viewvc?rev=419332&view=rev
Log:
Avoid over processing single connections, handle one package at a time

Modified:
    tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/io/ObjectReader.java
    tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/transport/ReceiverBase.java
    tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/transport/nio/NioReplicationThread.java

Modified: tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/io/ObjectReader.java
URL: http://svn.apache.org/viewvc/tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/io/ObjectReader.java?rev=419332&r1=419331&r2=419332&view=diff
==============================================================================
--- tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/io/ObjectReader.java (original)
+++ tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/io/ObjectReader.java Wed Jul  5 13:30:13 2006
@@ -126,6 +126,10 @@
         return buffer.getLength();
     }
     
+
+    public boolean hasPackage() {
+        return buffer.countPackages(true)>0;
+    }
     /**
      * Returns the number of packages that the reader has read
      * @return int

Modified: tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/transport/ReceiverBase.java
URL: http://svn.apache.org/viewvc/tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/transport/ReceiverBase.java?rev=419332&r1=419331&r2=419332&view=diff
==============================================================================
--- tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/transport/ReceiverBase.java (original)
+++ tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/transport/ReceiverBase.java Wed Jul  5 13:30:13 2006
@@ -57,7 +57,7 @@
     private long tcpSelectorTimeout = 5000;
     //how many times to search for an available socket
     private int autoBind = 10;
-    private int maxThreads = 25;
+    private int maxThreads = 15;
     private int minThreads = 6;
     private boolean tcpNoDelay = true;
     private boolean soKeepAlive = false;
@@ -190,7 +190,7 @@
     
     public void messageDataReceived(ChannelMessage data) {
         if ( this.listener != null ) {
-            listener.messageReceived(data);
+            if ( listener.accept(data) ) listener.messageReceived(data);
         }
     }
     

Modified: tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/transport/nio/NioReplicationThread.java
URL: http://svn.apache.org/viewvc/tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/transport/nio/NioReplicationThread.java?rev=419332&r1=419331&r2=419332&view=diff
==============================================================================
--- tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/transport/nio/NioReplicationThread.java (original)
+++ tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/transport/nio/NioReplicationThread.java Wed Jul  5 13:30:13 2006
@@ -143,6 +143,8 @@
             else 
                 reader.append(buffer,count,false);
             buffer.clear();		// make buffer empty
+            //do we have at least one package?
+            if ( reader.hasPackage() ) break;
         }
 
         int pkgcnt = reader.count();



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org