Author: davidillsley
Date: Thu Feb 7 09:36:49 2008
New Revision: 619524
URL: http://svn.apache.org/viewvc?rev=619524&view=rev
Log:
Minor performance improvement.
Modified:
webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/workers/Sender.java
Modified:
webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/workers/Sender.java
URL:
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/workers/Sender.java?rev=619524&r1=619523&r2=619524&view=diff
==============================================================================
---
webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/workers/Sender.java
(original)
+++
webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/workers/Sender.java
Thu Feb 7 09:36:49 2008
@@ -64,6 +64,9 @@
// try and give them all a chance to invoke messages.
int nextIndex = 0;
boolean processedMessage = false;
+ long lastHousekeeping = 0;
+
+ private static int HOUSEKEEPING_INTERVAL = 20000;
public Sender () {
super(Sandesha2Constants.SENDER_SLEEP_TIME);
@@ -92,17 +95,19 @@
}
processedMessage = false;
- // At this point - delete any sequences that
have timed out, or been terminated.
- deleteTerminatedSequences(storageManager);
-
- // Also clean up and sender beans that are not
yet eligible for sending, but
- // are blocking the transport threads.
- unblockTransportThreads(storageManager);
-
- // Finally, check for messages that can only be
serviced by polling, and warn
- // the user if they are too old
- checkForOrphanMessages(storageManager);
-
+ if(System.currentTimeMillis()-lastHousekeeping
> HOUSEKEEPING_INTERVAL){
+ // At this point - delete any sequences
that have timed out, or been terminated.
+
deleteTerminatedSequences(storageManager);
+
+ // Also clean up and sender beans that
are not yet eligible for sending, but
+ // are blocking the transport threads.
+ unblockTransportThreads(storageManager);
+
+ // Finally, check for messages that can
only be serviced by polling, and warn
+ // the user if they are too old
+ checkForOrphanMessages(storageManager);
+ lastHousekeeping =
System.currentTimeMillis();
+ }
if (log.isDebugEnabled()) log.debug("Exit:
Sender::internalRun, looped over all sequences, sleep " + sleep);
return sleep;
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]