mirror of https://github.com/apache/activemq.git
Setting svn:eol-style
git-svn-id: https://svn.apache.org/repos/asf/incubator/activemq/trunk@474985 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
9e6eb830b3
commit
06a365f12c
|
@ -1,28 +1,28 @@
|
|||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
#
|
||||
# The logging properties used during tests..
|
||||
#
|
||||
log4j.rootLogger=DEBUG, stdout
|
||||
|
||||
log4j.logger.org.apache.activemq.spring=WARN
|
||||
|
||||
# CONSOLE appender not used by default
|
||||
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
|
||||
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
|
||||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
#
|
||||
# The logging properties used during tests..
|
||||
#
|
||||
log4j.rootLogger=DEBUG, stdout
|
||||
|
||||
log4j.logger.org.apache.activemq.spring=WARN
|
||||
|
||||
# CONSOLE appender not used by default
|
||||
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
|
||||
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
|
||||
log4j.appender.stdout.layout.ConversionPattern=%d [%-15.15t] %-5p %-30.30c{1} - %m%n
|
|
@ -15,257 +15,257 @@
|
|||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package org.apache.activemq.kaha.impl.index;
|
||||
|
||||
import java.io.IOException;
|
||||
package org.apache.activemq.kaha.impl.index;
|
||||
|
||||
import java.io.IOException;
|
||||
import org.apache.activemq.kaha.StoreEntry;
|
||||
/**
|
||||
* A linked list used by IndexItems
|
||||
*
|
||||
* @version $Revision$
|
||||
*/
|
||||
public class DiskIndexLinkedList implements IndexLinkedList{
|
||||
protected IndexManager indexManager;
|
||||
protected transient IndexItem root;
|
||||
protected transient IndexItem last;
|
||||
protected transient int size=0;
|
||||
|
||||
/**
|
||||
* Constructs an empty list.
|
||||
*/
|
||||
public DiskIndexLinkedList(IndexManager im,IndexItem header){
|
||||
this.indexManager=im;
|
||||
this.root=header;
|
||||
}
|
||||
|
||||
public IndexItem getRoot(){
|
||||
return root;
|
||||
}
|
||||
|
||||
void setRoot(IndexItem e){
|
||||
this.root=e;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the first element in this list.
|
||||
*
|
||||
* @return the first element in this list.
|
||||
*/
|
||||
public IndexItem getFirst(){
|
||||
if(size==0)
|
||||
return null;
|
||||
return getNextEntry(root);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the last element in this list.
|
||||
*
|
||||
* @return the last element in this list.
|
||||
*/
|
||||
public IndexItem getLast(){
|
||||
if(size==0)
|
||||
return null;
|
||||
return last;
|
||||
}
|
||||
|
||||
/**
|
||||
* Removes and returns the first element from this list.
|
||||
*
|
||||
* @return the first element from this list.
|
||||
*/
|
||||
public StoreEntry removeFirst(){
|
||||
if(size==0){
|
||||
return null;
|
||||
}
|
||||
IndexItem result=getNextEntry(root);
|
||||
remove(result);
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Removes and returns the last element from this list.
|
||||
*
|
||||
* @return the last element from this list.
|
||||
*/
|
||||
public Object removeLast(){
|
||||
if(size==0)
|
||||
return null;
|
||||
StoreEntry result=last;
|
||||
remove(last);
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Inserts the given element at the beginning of this list.
|
||||
*
|
||||
* @param o the element to be inserted at the beginning of this list.
|
||||
*/
|
||||
public void addFirst(IndexItem item){
|
||||
if(size==0){
|
||||
last=item;
|
||||
}
|
||||
size++;
|
||||
}
|
||||
|
||||
/**
|
||||
* Appends the given element to the end of this list. (Identical in function to the <tt>add</tt> method; included
|
||||
* only for consistency.)
|
||||
*
|
||||
* @param o the element to be inserted at the end of this list.
|
||||
*/
|
||||
public void addLast(IndexItem item){
|
||||
size++;
|
||||
last=item;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the number of elements in this list.
|
||||
*
|
||||
* @return the number of elements in this list.
|
||||
*/
|
||||
public int size(){
|
||||
return size;
|
||||
}
|
||||
|
||||
/**
|
||||
* is the list empty?
|
||||
*
|
||||
* @return true if there are no elements in the list
|
||||
*/
|
||||
public boolean isEmpty(){
|
||||
return size==0;
|
||||
}
|
||||
|
||||
/**
|
||||
* Appends the specified element to the end of this list.
|
||||
*
|
||||
* @param o element to be appended to this list.
|
||||
* @return <tt>true</tt> (as per the general contract of <tt>Collection.add</tt>).
|
||||
*/
|
||||
/**
|
||||
* A linked list used by IndexItems
|
||||
*
|
||||
* @version $Revision$
|
||||
*/
|
||||
public class DiskIndexLinkedList implements IndexLinkedList{
|
||||
protected IndexManager indexManager;
|
||||
protected transient IndexItem root;
|
||||
protected transient IndexItem last;
|
||||
protected transient int size=0;
|
||||
|
||||
/**
|
||||
* Constructs an empty list.
|
||||
*/
|
||||
public DiskIndexLinkedList(IndexManager im,IndexItem header){
|
||||
this.indexManager=im;
|
||||
this.root=header;
|
||||
}
|
||||
|
||||
public IndexItem getRoot(){
|
||||
return root;
|
||||
}
|
||||
|
||||
void setRoot(IndexItem e){
|
||||
this.root=e;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the first element in this list.
|
||||
*
|
||||
* @return the first element in this list.
|
||||
*/
|
||||
public IndexItem getFirst(){
|
||||
if(size==0)
|
||||
return null;
|
||||
return getNextEntry(root);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the last element in this list.
|
||||
*
|
||||
* @return the last element in this list.
|
||||
*/
|
||||
public IndexItem getLast(){
|
||||
if(size==0)
|
||||
return null;
|
||||
return last;
|
||||
}
|
||||
|
||||
/**
|
||||
* Removes and returns the first element from this list.
|
||||
*
|
||||
* @return the first element from this list.
|
||||
*/
|
||||
public StoreEntry removeFirst(){
|
||||
if(size==0){
|
||||
return null;
|
||||
}
|
||||
IndexItem result=getNextEntry(root);
|
||||
remove(result);
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Removes and returns the last element from this list.
|
||||
*
|
||||
* @return the last element from this list.
|
||||
*/
|
||||
public Object removeLast(){
|
||||
if(size==0)
|
||||
return null;
|
||||
StoreEntry result=last;
|
||||
remove(last);
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Inserts the given element at the beginning of this list.
|
||||
*
|
||||
* @param o the element to be inserted at the beginning of this list.
|
||||
*/
|
||||
public void addFirst(IndexItem item){
|
||||
if(size==0){
|
||||
last=item;
|
||||
}
|
||||
size++;
|
||||
}
|
||||
|
||||
/**
|
||||
* Appends the given element to the end of this list. (Identical in function to the <tt>add</tt> method; included
|
||||
* only for consistency.)
|
||||
*
|
||||
* @param o the element to be inserted at the end of this list.
|
||||
*/
|
||||
public void addLast(IndexItem item){
|
||||
size++;
|
||||
last=item;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the number of elements in this list.
|
||||
*
|
||||
* @return the number of elements in this list.
|
||||
*/
|
||||
public int size(){
|
||||
return size;
|
||||
}
|
||||
|
||||
/**
|
||||
* is the list empty?
|
||||
*
|
||||
* @return true if there are no elements in the list
|
||||
*/
|
||||
public boolean isEmpty(){
|
||||
return size==0;
|
||||
}
|
||||
|
||||
/**
|
||||
* Appends the specified element to the end of this list.
|
||||
*
|
||||
* @param o element to be appended to this list.
|
||||
* @return <tt>true</tt> (as per the general contract of <tt>Collection.add</tt>).
|
||||
*/
|
||||
public boolean add(IndexItem item){
|
||||
addLast(item);
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Removes all of the elements from this list.
|
||||
*/
|
||||
public void clear(){
|
||||
last=null;
|
||||
size=0;
|
||||
}
|
||||
|
||||
// Positional Access Operations
|
||||
/**
|
||||
* Returns the element at the specified position in this list.
|
||||
*
|
||||
* @param index index of element to return.
|
||||
* @return the element at the specified position in this list.
|
||||
*
|
||||
* @throws IndexOutOfBoundsException if the specified index is is out of range (<tt>index < 0 || index >= size()</tt>).
|
||||
*/
|
||||
public IndexItem get(int index){
|
||||
return entry(index);
|
||||
}
|
||||
|
||||
/**
|
||||
* Inserts the specified element at the specified position in this list. Shifts the element currently at that
|
||||
* position (if any) and any subsequent elements to the right (adds one to their indices).
|
||||
*
|
||||
* @param index index at which the specified element is to be inserted.
|
||||
* @param element element to be inserted.
|
||||
*
|
||||
* @throws IndexOutOfBoundsException if the specified index is out of range (<tt>index < 0 || index > size()</tt>).
|
||||
*/
|
||||
public void add(int index,IndexItem element){
|
||||
if(index==size-1){
|
||||
last=element;
|
||||
}
|
||||
size++;
|
||||
}
|
||||
|
||||
/**
|
||||
* Removes the element at the specified position in this list. Shifts any subsequent elements to the left (subtracts
|
||||
* one from their indices). Returns the element that was removed from the list.
|
||||
*
|
||||
* @param index the index of the element to removed.
|
||||
* @return the element previously at the specified position.
|
||||
*
|
||||
* @throws IndexOutOfBoundsException if the specified index is out of range (<tt>index < 0 || index >= size()</tt>).
|
||||
*/
|
||||
public Object remove(int index){
|
||||
IndexItem e=entry(index);
|
||||
remove(e);
|
||||
return e;
|
||||
}
|
||||
|
||||
/**
|
||||
* Return the indexed entry.
|
||||
*/
|
||||
private IndexItem entry(int index){
|
||||
if(index<0||index>=size)
|
||||
throw new IndexOutOfBoundsException("Index: "+index+", Size: "+size);
|
||||
IndexItem e=root;
|
||||
|
||||
for(int i=0;i<=index;i++)
|
||||
e=getNextEntry(e);
|
||||
if(e != null &&last!=null && last.equals(e)){
|
||||
last = e;
|
||||
}
|
||||
return e;
|
||||
}
|
||||
|
||||
// Search Operations
|
||||
/**
|
||||
* Returns the index in this list of the first occurrence of the specified element, or -1 if the List does not
|
||||
* contain this element. More formally, returns the lowest index i such that
|
||||
* <tt>(o==null ? get(i)==null : o.equals(get(i)))</tt>, or -1 if there is no such index.
|
||||
*
|
||||
* @param o element to search for.
|
||||
* @return the index in this list of the first occurrence of the specified element, or -1 if the list does not
|
||||
* contain this element.
|
||||
*/
|
||||
public int indexOf(StoreEntry o){
|
||||
int index=0;
|
||||
if(size>0){
|
||||
for(IndexItem e=getNextEntry(root);e!=null;e=getNextEntry(e)){
|
||||
if(o.equals(e)){
|
||||
return index;
|
||||
}
|
||||
index++;
|
||||
}
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
|
||||
/**
|
||||
* Retrieve the next entry after this entry
|
||||
*
|
||||
* @param entry
|
||||
* @return next entry
|
||||
*/
|
||||
public IndexItem getNextEntry(IndexItem current){
|
||||
IndexItem result=null;
|
||||
if(current!=null&¤t.getNextItem()>=0){
|
||||
try{
|
||||
result=indexManager.getIndex(current.getNextItem());
|
||||
}catch(IOException e){
|
||||
throw new RuntimeException("Failed to get next index from " + indexManager + " for " + current,e);
|
||||
}
|
||||
}
|
||||
// essential last get's updated consistently
|
||||
if(result != null &&last!=null && last.equals(result)){
|
||||
result = last;
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Retrive the prev entry after this entry
|
||||
*
|
||||
* @param entry
|
||||
* @return prev entry
|
||||
*/
|
||||
addLast(item);
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Removes all of the elements from this list.
|
||||
*/
|
||||
public void clear(){
|
||||
last=null;
|
||||
size=0;
|
||||
}
|
||||
|
||||
// Positional Access Operations
|
||||
/**
|
||||
* Returns the element at the specified position in this list.
|
||||
*
|
||||
* @param index index of element to return.
|
||||
* @return the element at the specified position in this list.
|
||||
*
|
||||
* @throws IndexOutOfBoundsException if the specified index is is out of range (<tt>index < 0 || index >= size()</tt>).
|
||||
*/
|
||||
public IndexItem get(int index){
|
||||
return entry(index);
|
||||
}
|
||||
|
||||
/**
|
||||
* Inserts the specified element at the specified position in this list. Shifts the element currently at that
|
||||
* position (if any) and any subsequent elements to the right (adds one to their indices).
|
||||
*
|
||||
* @param index index at which the specified element is to be inserted.
|
||||
* @param element element to be inserted.
|
||||
*
|
||||
* @throws IndexOutOfBoundsException if the specified index is out of range (<tt>index < 0 || index > size()</tt>).
|
||||
*/
|
||||
public void add(int index,IndexItem element){
|
||||
if(index==size-1){
|
||||
last=element;
|
||||
}
|
||||
size++;
|
||||
}
|
||||
|
||||
/**
|
||||
* Removes the element at the specified position in this list. Shifts any subsequent elements to the left (subtracts
|
||||
* one from their indices). Returns the element that was removed from the list.
|
||||
*
|
||||
* @param index the index of the element to removed.
|
||||
* @return the element previously at the specified position.
|
||||
*
|
||||
* @throws IndexOutOfBoundsException if the specified index is out of range (<tt>index < 0 || index >= size()</tt>).
|
||||
*/
|
||||
public Object remove(int index){
|
||||
IndexItem e=entry(index);
|
||||
remove(e);
|
||||
return e;
|
||||
}
|
||||
|
||||
/**
|
||||
* Return the indexed entry.
|
||||
*/
|
||||
private IndexItem entry(int index){
|
||||
if(index<0||index>=size)
|
||||
throw new IndexOutOfBoundsException("Index: "+index+", Size: "+size);
|
||||
IndexItem e=root;
|
||||
|
||||
for(int i=0;i<=index;i++)
|
||||
e=getNextEntry(e);
|
||||
if(e != null &&last!=null && last.equals(e)){
|
||||
last = e;
|
||||
}
|
||||
return e;
|
||||
}
|
||||
|
||||
// Search Operations
|
||||
/**
|
||||
* Returns the index in this list of the first occurrence of the specified element, or -1 if the List does not
|
||||
* contain this element. More formally, returns the lowest index i such that
|
||||
* <tt>(o==null ? get(i)==null : o.equals(get(i)))</tt>, or -1 if there is no such index.
|
||||
*
|
||||
* @param o element to search for.
|
||||
* @return the index in this list of the first occurrence of the specified element, or -1 if the list does not
|
||||
* contain this element.
|
||||
*/
|
||||
public int indexOf(StoreEntry o){
|
||||
int index=0;
|
||||
if(size>0){
|
||||
for(IndexItem e=getNextEntry(root);e!=null;e=getNextEntry(e)){
|
||||
if(o.equals(e)){
|
||||
return index;
|
||||
}
|
||||
index++;
|
||||
}
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
|
||||
/**
|
||||
* Retrieve the next entry after this entry
|
||||
*
|
||||
* @param entry
|
||||
* @return next entry
|
||||
*/
|
||||
public IndexItem getNextEntry(IndexItem current){
|
||||
IndexItem result=null;
|
||||
if(current!=null&¤t.getNextItem()>=0){
|
||||
try{
|
||||
result=indexManager.getIndex(current.getNextItem());
|
||||
}catch(IOException e){
|
||||
throw new RuntimeException("Failed to get next index from " + indexManager + " for " + current,e);
|
||||
}
|
||||
}
|
||||
// essential last get's updated consistently
|
||||
if(result != null &&last!=null && last.equals(result)){
|
||||
result = last;
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Retrive the prev entry after this entry
|
||||
*
|
||||
* @param entry
|
||||
* @return prev entry
|
||||
*/
|
||||
public IndexItem getPrevEntry(IndexItem current){
|
||||
IndexItem result=null;
|
||||
if(current!=null&¤t.getPreviousItem()>=0){
|
||||
|
@ -280,22 +280,22 @@ public class DiskIndexLinkedList implements IndexLinkedList{
|
|||
return root;
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
public StoreEntry getEntry(StoreEntry current){
|
||||
StoreEntry result=null;
|
||||
if(current != null && current.getOffset() >= 0){
|
||||
try{
|
||||
result=indexManager.getIndex(current.getOffset());
|
||||
}catch(IOException e){
|
||||
throw new RuntimeException("Failed to index",e);
|
||||
}
|
||||
}
|
||||
//essential root get's updated consistently
|
||||
if(result != null &&root!=null && root.equals(result)){
|
||||
return root;
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
public StoreEntry getEntry(StoreEntry current){
|
||||
StoreEntry result=null;
|
||||
if(current != null && current.getOffset() >= 0){
|
||||
try{
|
||||
result=indexManager.getIndex(current.getOffset());
|
||||
}catch(IOException e){
|
||||
throw new RuntimeException("Failed to index",e);
|
||||
}
|
||||
}
|
||||
//essential root get's updated consistently
|
||||
if(result != null &&root!=null && root.equals(result)){
|
||||
return root;
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -316,18 +316,18 @@ public class DiskIndexLinkedList implements IndexLinkedList{
|
|||
return root;
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
public void remove(IndexItem e){
|
||||
if(e==root||e.equals(root))
|
||||
return;
|
||||
if(e==last||e.equals(last)){
|
||||
if(size>1){
|
||||
last=getPrevEntry(last);
|
||||
}else{
|
||||
last=null;
|
||||
}
|
||||
}
|
||||
size--;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void remove(IndexItem e){
|
||||
if(e==root||e.equals(root))
|
||||
return;
|
||||
if(e==last||e.equals(last)){
|
||||
if(size>1){
|
||||
last=getPrevEntry(last);
|
||||
}else{
|
||||
last=null;
|
||||
}
|
||||
}
|
||||
size--;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,249 +1,249 @@
|
|||
/**
|
||||
*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with this
|
||||
* work for additional information regarding copyright ownership. The ASF
|
||||
* licenses this file to You under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
||||
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
||||
* License for the specific language governing permissions and limitations under
|
||||
* the License.
|
||||
*/
|
||||
|
||||
package org.apache.activemq.store.kahadaptor;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import java.util.HashSet;
|
||||
import java.util.Iterator;
|
||||
import java.util.Set;
|
||||
import org.apache.activemq.broker.ConnectionContext;
|
||||
import org.apache.activemq.command.ActiveMQDestination;
|
||||
import org.apache.activemq.command.ActiveMQQueue;
|
||||
import org.apache.activemq.command.ActiveMQTopic;
|
||||
import org.apache.activemq.kaha.IndexTypes;
|
||||
import org.apache.activemq.kaha.ListContainer;
|
||||
import org.apache.activemq.kaha.MapContainer;
|
||||
import org.apache.activemq.kaha.Store;
|
||||
import org.apache.activemq.kaha.StoreFactory;
|
||||
import org.apache.activemq.kaha.StringMarshaller;
|
||||
import org.apache.activemq.memory.UsageManager;
|
||||
import org.apache.activemq.openwire.OpenWireFormat;
|
||||
import org.apache.activemq.store.MessageStore;
|
||||
import org.apache.activemq.store.PersistenceAdapter;
|
||||
import org.apache.activemq.store.TopicMessageStore;
|
||||
import org.apache.activemq.store.TransactionStore;
|
||||
import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
import edu.emory.mathcs.backport.java.util.concurrent.ConcurrentHashMap;
|
||||
|
||||
/**
|
||||
* @org.apache.xbean.XBean
|
||||
*
|
||||
* @version $Revision: 1.4 $
|
||||
*/
|
||||
public class KahaPersistenceAdapter implements PersistenceAdapter{
|
||||
|
||||
private static final Log log=LogFactory.getLog(KahaPersistenceAdapter.class);
|
||||
static final String PREPARED_TRANSACTIONS_NAME="PreparedTransactions";
|
||||
KahaTransactionStore transactionStore;
|
||||
ConcurrentHashMap topics=new ConcurrentHashMap();
|
||||
ConcurrentHashMap queues=new ConcurrentHashMap();
|
||||
ConcurrentHashMap messageStores=new ConcurrentHashMap();
|
||||
private boolean useExternalMessageReferences;
|
||||
private OpenWireFormat wireFormat=new OpenWireFormat();
|
||||
private long maxDataFileLength=32*1024*1024;
|
||||
private String indexType=IndexTypes.DISK_INDEX;
|
||||
private File dir;
|
||||
private Store theStore;
|
||||
|
||||
public KahaPersistenceAdapter(File dir) throws IOException{
|
||||
if(!dir.exists()){
|
||||
dir.mkdirs();
|
||||
}
|
||||
this.dir=dir;
|
||||
}
|
||||
|
||||
public Set getDestinations(){
|
||||
Set rc=new HashSet();
|
||||
try{
|
||||
Store store=getStore();
|
||||
for(Iterator i=store.getMapContainerIds().iterator();i.hasNext();){
|
||||
Object obj=i.next();
|
||||
if(obj instanceof ActiveMQDestination){
|
||||
rc.add(obj);
|
||||
}
|
||||
}
|
||||
}catch(IOException e){
|
||||
log.error("Failed to get destinations ",e);
|
||||
}
|
||||
return rc;
|
||||
}
|
||||
|
||||
public synchronized MessageStore createQueueMessageStore(ActiveMQQueue destination) throws IOException{
|
||||
MessageStore rc=(MessageStore)queues.get(destination);
|
||||
if(rc==null){
|
||||
rc=new KahaMessageStore(getMapContainer(destination,"queue-data"),destination);
|
||||
messageStores.put(destination,rc);
|
||||
if(transactionStore!=null){
|
||||
rc=transactionStore.proxy(rc);
|
||||
}
|
||||
queues.put(destination,rc);
|
||||
}
|
||||
return rc;
|
||||
}
|
||||
|
||||
public synchronized TopicMessageStore createTopicMessageStore(ActiveMQTopic destination) throws IOException{
|
||||
TopicMessageStore rc=(TopicMessageStore)topics.get(destination);
|
||||
if(rc==null){
|
||||
Store store=getStore();
|
||||
ListContainer messageContainer=getListContainer(destination,"topic-data");
|
||||
MapContainer subsContainer=getMapContainer(destination.toString()+"-Subscriptions","topic-subs");
|
||||
ListContainer ackContainer=store.getListContainer(destination.toString(),"topic-acks");
|
||||
ackContainer.setMarshaller(new TopicSubAckMarshaller());
|
||||
rc=new KahaTopicMessageStore(store,messageContainer,ackContainer,subsContainer,destination);
|
||||
messageStores.put(destination,rc);
|
||||
if(transactionStore!=null){
|
||||
rc=transactionStore.proxy(rc);
|
||||
}
|
||||
topics.put(destination,rc);
|
||||
}
|
||||
return rc;
|
||||
}
|
||||
|
||||
protected MessageStore retrieveMessageStore(Object id){
|
||||
MessageStore result=(MessageStore)messageStores.get(id);
|
||||
return result;
|
||||
}
|
||||
|
||||
public TransactionStore createTransactionStore() throws IOException{
|
||||
if(transactionStore==null){
|
||||
Store store=getStore();
|
||||
MapContainer container=store.getMapContainer(PREPARED_TRANSACTIONS_NAME,"transactions");
|
||||
container.setKeyMarshaller(new CommandMarshaller(wireFormat));
|
||||
container.setValueMarshaller(new TransactionMarshaller(wireFormat));
|
||||
container.load();
|
||||
transactionStore=new KahaTransactionStore(this,container);
|
||||
}
|
||||
return transactionStore;
|
||||
}
|
||||
|
||||
public void beginTransaction(ConnectionContext context){
|
||||
}
|
||||
|
||||
public void commitTransaction(ConnectionContext context) throws IOException{
|
||||
if(theStore!=null){
|
||||
theStore.force();
|
||||
}
|
||||
}
|
||||
|
||||
public void rollbackTransaction(ConnectionContext context){
|
||||
}
|
||||
|
||||
public void start() throws Exception{
|
||||
}
|
||||
|
||||
public void stop() throws Exception{
|
||||
if(theStore!=null){
|
||||
theStore.close();
|
||||
}
|
||||
}
|
||||
|
||||
public long getLastMessageBrokerSequenceId() throws IOException{
|
||||
return 0;
|
||||
}
|
||||
|
||||
public void deleteAllMessages() throws IOException{
|
||||
if(theStore!=null){
|
||||
theStore.delete();
|
||||
}
|
||||
}
|
||||
|
||||
public boolean isUseExternalMessageReferences(){
|
||||
return useExternalMessageReferences;
|
||||
}
|
||||
|
||||
public void setUseExternalMessageReferences(boolean useExternalMessageReferences){
|
||||
this.useExternalMessageReferences=useExternalMessageReferences;
|
||||
}
|
||||
|
||||
protected MapContainer getMapContainer(Object id,String containerName) throws IOException{
|
||||
Store store=getStore();
|
||||
MapContainer container=store.getMapContainer(id,containerName);
|
||||
container.setKeyMarshaller(new StringMarshaller());
|
||||
if(useExternalMessageReferences){
|
||||
container.setValueMarshaller(new StringMarshaller());
|
||||
}else{
|
||||
container.setValueMarshaller(new CommandMarshaller(wireFormat));
|
||||
}
|
||||
container.load();
|
||||
return container;
|
||||
}
|
||||
|
||||
protected ListContainer getListContainer(Object id,String containerName) throws IOException{
|
||||
Store store=getStore();
|
||||
ListContainer container=store.getListContainer(id,containerName);
|
||||
if(useExternalMessageReferences){
|
||||
container.setMarshaller(new StringMarshaller());
|
||||
}else{
|
||||
container.setMarshaller(new CommandMarshaller(wireFormat));
|
||||
}
|
||||
container.load();
|
||||
return container;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param usageManager
|
||||
* The UsageManager that is controlling the broker's memory
|
||||
* usage.
|
||||
*/
|
||||
public void setUsageManager(UsageManager usageManager){
|
||||
}
|
||||
|
||||
/**
|
||||
* @return the maxDataFileLength
|
||||
*/
|
||||
public long getMaxDataFileLength(){
|
||||
return maxDataFileLength;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param maxDataFileLength
|
||||
* the maxDataFileLength to set
|
||||
*
|
||||
* @org.apache.xbean.Property propertyEditor="org.apache.activemq.util.MemoryPropertyEditor"
|
||||
*/
|
||||
public void setMaxDataFileLength(long maxDataFileLength){
|
||||
this.maxDataFileLength=maxDataFileLength;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return the indexType
|
||||
*/
|
||||
public String getIndexType(){
|
||||
return this.indexType;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param indexType the indexTypes to set
|
||||
*/
|
||||
public void setIndexType(String indexType){
|
||||
this.indexType=indexType;
|
||||
}
|
||||
|
||||
protected synchronized Store getStore() throws IOException{
|
||||
if(theStore==null){
|
||||
String name=dir.getAbsolutePath()+File.separator+"kaha.db";
|
||||
theStore=StoreFactory.open(name,"rw");
|
||||
theStore.setMaxDataFileLength(maxDataFileLength);
|
||||
theStore.setIndexType(indexType);
|
||||
}
|
||||
return theStore;
|
||||
}
|
||||
}
|
||||
/**
|
||||
*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with this
|
||||
* work for additional information regarding copyright ownership. The ASF
|
||||
* licenses this file to You under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
||||
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
||||
* License for the specific language governing permissions and limitations under
|
||||
* the License.
|
||||
*/
|
||||
|
||||
package org.apache.activemq.store.kahadaptor;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import java.util.HashSet;
|
||||
import java.util.Iterator;
|
||||
import java.util.Set;
|
||||
import org.apache.activemq.broker.ConnectionContext;
|
||||
import org.apache.activemq.command.ActiveMQDestination;
|
||||
import org.apache.activemq.command.ActiveMQQueue;
|
||||
import org.apache.activemq.command.ActiveMQTopic;
|
||||
import org.apache.activemq.kaha.IndexTypes;
|
||||
import org.apache.activemq.kaha.ListContainer;
|
||||
import org.apache.activemq.kaha.MapContainer;
|
||||
import org.apache.activemq.kaha.Store;
|
||||
import org.apache.activemq.kaha.StoreFactory;
|
||||
import org.apache.activemq.kaha.StringMarshaller;
|
||||
import org.apache.activemq.memory.UsageManager;
|
||||
import org.apache.activemq.openwire.OpenWireFormat;
|
||||
import org.apache.activemq.store.MessageStore;
|
||||
import org.apache.activemq.store.PersistenceAdapter;
|
||||
import org.apache.activemq.store.TopicMessageStore;
|
||||
import org.apache.activemq.store.TransactionStore;
|
||||
import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
import edu.emory.mathcs.backport.java.util.concurrent.ConcurrentHashMap;
|
||||
|
||||
/**
|
||||
* @org.apache.xbean.XBean
|
||||
*
|
||||
* @version $Revision: 1.4 $
|
||||
*/
|
||||
public class KahaPersistenceAdapter implements PersistenceAdapter{
|
||||
|
||||
private static final Log log=LogFactory.getLog(KahaPersistenceAdapter.class);
|
||||
static final String PREPARED_TRANSACTIONS_NAME="PreparedTransactions";
|
||||
KahaTransactionStore transactionStore;
|
||||
ConcurrentHashMap topics=new ConcurrentHashMap();
|
||||
ConcurrentHashMap queues=new ConcurrentHashMap();
|
||||
ConcurrentHashMap messageStores=new ConcurrentHashMap();
|
||||
private boolean useExternalMessageReferences;
|
||||
private OpenWireFormat wireFormat=new OpenWireFormat();
|
||||
private long maxDataFileLength=32*1024*1024;
|
||||
private String indexType=IndexTypes.DISK_INDEX;
|
||||
private File dir;
|
||||
private Store theStore;
|
||||
|
||||
public KahaPersistenceAdapter(File dir) throws IOException{
|
||||
if(!dir.exists()){
|
||||
dir.mkdirs();
|
||||
}
|
||||
this.dir=dir;
|
||||
}
|
||||
|
||||
public Set getDestinations(){
|
||||
Set rc=new HashSet();
|
||||
try{
|
||||
Store store=getStore();
|
||||
for(Iterator i=store.getMapContainerIds().iterator();i.hasNext();){
|
||||
Object obj=i.next();
|
||||
if(obj instanceof ActiveMQDestination){
|
||||
rc.add(obj);
|
||||
}
|
||||
}
|
||||
}catch(IOException e){
|
||||
log.error("Failed to get destinations ",e);
|
||||
}
|
||||
return rc;
|
||||
}
|
||||
|
||||
public synchronized MessageStore createQueueMessageStore(ActiveMQQueue destination) throws IOException{
|
||||
MessageStore rc=(MessageStore)queues.get(destination);
|
||||
if(rc==null){
|
||||
rc=new KahaMessageStore(getMapContainer(destination,"queue-data"),destination);
|
||||
messageStores.put(destination,rc);
|
||||
if(transactionStore!=null){
|
||||
rc=transactionStore.proxy(rc);
|
||||
}
|
||||
queues.put(destination,rc);
|
||||
}
|
||||
return rc;
|
||||
}
|
||||
|
||||
public synchronized TopicMessageStore createTopicMessageStore(ActiveMQTopic destination) throws IOException{
|
||||
TopicMessageStore rc=(TopicMessageStore)topics.get(destination);
|
||||
if(rc==null){
|
||||
Store store=getStore();
|
||||
ListContainer messageContainer=getListContainer(destination,"topic-data");
|
||||
MapContainer subsContainer=getMapContainer(destination.toString()+"-Subscriptions","topic-subs");
|
||||
ListContainer ackContainer=store.getListContainer(destination.toString(),"topic-acks");
|
||||
ackContainer.setMarshaller(new TopicSubAckMarshaller());
|
||||
rc=new KahaTopicMessageStore(store,messageContainer,ackContainer,subsContainer,destination);
|
||||
messageStores.put(destination,rc);
|
||||
if(transactionStore!=null){
|
||||
rc=transactionStore.proxy(rc);
|
||||
}
|
||||
topics.put(destination,rc);
|
||||
}
|
||||
return rc;
|
||||
}
|
||||
|
||||
protected MessageStore retrieveMessageStore(Object id){
|
||||
MessageStore result=(MessageStore)messageStores.get(id);
|
||||
return result;
|
||||
}
|
||||
|
||||
public TransactionStore createTransactionStore() throws IOException{
|
||||
if(transactionStore==null){
|
||||
Store store=getStore();
|
||||
MapContainer container=store.getMapContainer(PREPARED_TRANSACTIONS_NAME,"transactions");
|
||||
container.setKeyMarshaller(new CommandMarshaller(wireFormat));
|
||||
container.setValueMarshaller(new TransactionMarshaller(wireFormat));
|
||||
container.load();
|
||||
transactionStore=new KahaTransactionStore(this,container);
|
||||
}
|
||||
return transactionStore;
|
||||
}
|
||||
|
||||
public void beginTransaction(ConnectionContext context){
|
||||
}
|
||||
|
||||
public void commitTransaction(ConnectionContext context) throws IOException{
|
||||
if(theStore!=null){
|
||||
theStore.force();
|
||||
}
|
||||
}
|
||||
|
||||
public void rollbackTransaction(ConnectionContext context){
|
||||
}
|
||||
|
||||
public void start() throws Exception{
|
||||
}
|
||||
|
||||
public void stop() throws Exception{
|
||||
if(theStore!=null){
|
||||
theStore.close();
|
||||
}
|
||||
}
|
||||
|
||||
public long getLastMessageBrokerSequenceId() throws IOException{
|
||||
return 0;
|
||||
}
|
||||
|
||||
public void deleteAllMessages() throws IOException{
|
||||
if(theStore!=null){
|
||||
theStore.delete();
|
||||
}
|
||||
}
|
||||
|
||||
public boolean isUseExternalMessageReferences(){
|
||||
return useExternalMessageReferences;
|
||||
}
|
||||
|
||||
public void setUseExternalMessageReferences(boolean useExternalMessageReferences){
|
||||
this.useExternalMessageReferences=useExternalMessageReferences;
|
||||
}
|
||||
|
||||
protected MapContainer getMapContainer(Object id,String containerName) throws IOException{
|
||||
Store store=getStore();
|
||||
MapContainer container=store.getMapContainer(id,containerName);
|
||||
container.setKeyMarshaller(new StringMarshaller());
|
||||
if(useExternalMessageReferences){
|
||||
container.setValueMarshaller(new StringMarshaller());
|
||||
}else{
|
||||
container.setValueMarshaller(new CommandMarshaller(wireFormat));
|
||||
}
|
||||
container.load();
|
||||
return container;
|
||||
}
|
||||
|
||||
protected ListContainer getListContainer(Object id,String containerName) throws IOException{
|
||||
Store store=getStore();
|
||||
ListContainer container=store.getListContainer(id,containerName);
|
||||
if(useExternalMessageReferences){
|
||||
container.setMarshaller(new StringMarshaller());
|
||||
}else{
|
||||
container.setMarshaller(new CommandMarshaller(wireFormat));
|
||||
}
|
||||
container.load();
|
||||
return container;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param usageManager
|
||||
* The UsageManager that is controlling the broker's memory
|
||||
* usage.
|
||||
*/
|
||||
public void setUsageManager(UsageManager usageManager){
|
||||
}
|
||||
|
||||
/**
|
||||
* @return the maxDataFileLength
|
||||
*/
|
||||
public long getMaxDataFileLength(){
|
||||
return maxDataFileLength;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param maxDataFileLength
|
||||
* the maxDataFileLength to set
|
||||
*
|
||||
* @org.apache.xbean.Property propertyEditor="org.apache.activemq.util.MemoryPropertyEditor"
|
||||
*/
|
||||
public void setMaxDataFileLength(long maxDataFileLength){
|
||||
this.maxDataFileLength=maxDataFileLength;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return the indexType
|
||||
*/
|
||||
public String getIndexType(){
|
||||
return this.indexType;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param indexType the indexTypes to set
|
||||
*/
|
||||
public void setIndexType(String indexType){
|
||||
this.indexType=indexType;
|
||||
}
|
||||
|
||||
protected synchronized Store getStore() throws IOException{
|
||||
if(theStore==null){
|
||||
String name=dir.getAbsolutePath()+File.separator+"kaha.db";
|
||||
theStore=StoreFactory.open(name,"rw");
|
||||
theStore.setMaxDataFileLength(maxDataFileLength);
|
||||
theStore.setIndexType(indexType);
|
||||
}
|
||||
return theStore;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,238 +1,238 @@
|
|||
/**
|
||||
*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package org.apache.activemq;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
import javax.jms.Connection;
|
||||
import javax.jms.DeliveryMode;
|
||||
import javax.jms.Destination;
|
||||
import javax.jms.JMSException;
|
||||
import javax.jms.Message;
|
||||
import javax.jms.MessageConsumer;
|
||||
import javax.jms.MessageProducer;
|
||||
import javax.jms.Session;
|
||||
import javax.jms.Topic;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
public class JmsSendReceiveWithMessageExpirationTest extends TestSupport {
|
||||
|
||||
private static final org.apache.commons.logging.Log log = org.apache.commons.logging.LogFactory
|
||||
.getLog(JmsSendReceiveWithMessageExpirationTest.class);
|
||||
|
||||
protected int messageCount = 100;
|
||||
protected String[] data;
|
||||
protected Session session;
|
||||
protected Destination consumerDestination;
|
||||
protected Destination producerDestination;
|
||||
protected boolean durable = false;
|
||||
protected int deliveryMode = DeliveryMode.PERSISTENT;
|
||||
protected long timeToLive = 5000;
|
||||
protected boolean verbose = false;
|
||||
|
||||
protected Connection connection;
|
||||
|
||||
protected void setUp() throws Exception {
|
||||
|
||||
super.setUp();
|
||||
|
||||
data = new String[messageCount];
|
||||
|
||||
for (int i = 0; i < messageCount; i++) {
|
||||
data[i] = "Text for message: " + i + " at " + new Date();
|
||||
}
|
||||
|
||||
connectionFactory = createConnectionFactory();
|
||||
connection = createConnection();
|
||||
|
||||
if (durable) {
|
||||
connection.setClientID(getClass().getName());
|
||||
}
|
||||
|
||||
session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test consuming an expired queue.
|
||||
*
|
||||
* @throws Exception
|
||||
*/
|
||||
public void testConsumeExpiredQueue() throws Exception {
|
||||
|
||||
MessageProducer producer = createProducer(timeToLive);
|
||||
|
||||
consumerDestination = session.createQueue(getConsumerSubject());
|
||||
producerDestination = session.createQueue(getProducerSubject());
|
||||
|
||||
MessageConsumer consumer = createConsumer();
|
||||
connection.start();
|
||||
|
||||
for (int i = 0; i < data.length; i++) {
|
||||
Message message = session.createTextMessage(data[i]);
|
||||
message.setStringProperty("stringProperty",data[i]);
|
||||
message.setIntProperty("intProperty",i);
|
||||
|
||||
if (verbose) {
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("About to send a queue message: " + message + " with text: " + data[i]);
|
||||
}
|
||||
}
|
||||
|
||||
producer.send(producerDestination, message);
|
||||
}
|
||||
|
||||
// sleeps a second longer than the expiration time.
|
||||
// Basically waits till queue expires.
|
||||
Thread.sleep(timeToLive + 1000);
|
||||
|
||||
// message should have expired.
|
||||
assertNull(consumer.receive(1000));
|
||||
}
|
||||
|
||||
/**
|
||||
* Sends and consumes the messages to a queue destination.
|
||||
*
|
||||
* @throws Exception
|
||||
*/
|
||||
public void testConsumeQueue() throws Exception {
|
||||
|
||||
MessageProducer producer = createProducer(0);
|
||||
|
||||
consumerDestination = session.createQueue(getConsumerSubject());
|
||||
producerDestination = session.createQueue(getProducerSubject());
|
||||
|
||||
MessageConsumer consumer = createConsumer();
|
||||
connection.start();
|
||||
|
||||
for (int i = 0; i < data.length; i++) {
|
||||
Message message = session.createTextMessage(data[i]);
|
||||
message.setStringProperty("stringProperty",data[i]);
|
||||
message.setIntProperty("intProperty",i);
|
||||
|
||||
if (verbose) {
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("About to send a queue message: " + message + " with text: " + data[i]);
|
||||
}
|
||||
}
|
||||
|
||||
producer.send(producerDestination, message);
|
||||
}
|
||||
|
||||
// should receive a queue since there is no expiration.
|
||||
assertNotNull(consumer.receive(1000));
|
||||
}
|
||||
|
||||
/**
|
||||
* Test consuming an expired topic.
|
||||
*
|
||||
* @throws Exception
|
||||
*/
|
||||
public void testConsumeExpiredTopic() throws Exception {
|
||||
|
||||
MessageProducer producer = createProducer(timeToLive);
|
||||
|
||||
consumerDestination = session.createTopic(getConsumerSubject());
|
||||
producerDestination = session.createTopic(getProducerSubject());
|
||||
|
||||
MessageConsumer consumer = createConsumer();
|
||||
connection.start();
|
||||
|
||||
for (int i = 0; i < data.length; i++) {
|
||||
Message message = session.createTextMessage(data[i]);
|
||||
message.setStringProperty("stringProperty",data[i]);
|
||||
message.setIntProperty("intProperty",i);
|
||||
|
||||
if (verbose) {
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("About to send a topic message: " + message + " with text: " + data[i]);
|
||||
}
|
||||
}
|
||||
|
||||
producer.send(producerDestination, message);
|
||||
}
|
||||
|
||||
// sleeps a second longer than the expiration time.
|
||||
// Basically waits till topic expires.
|
||||
Thread.sleep(timeToLive + 1000);
|
||||
|
||||
// message should have expired.
|
||||
assertNull(consumer.receive(1000));
|
||||
}
|
||||
|
||||
/**
|
||||
* Sends and consumes the messages to a topic destination.
|
||||
*
|
||||
* @throws Exception
|
||||
*/
|
||||
public void testConsumeTopic() throws Exception {
|
||||
|
||||
MessageProducer producer = createProducer(0);
|
||||
|
||||
consumerDestination = session.createTopic(getConsumerSubject());
|
||||
producerDestination = session.createTopic(getProducerSubject());
|
||||
|
||||
MessageConsumer consumer = createConsumer();
|
||||
connection.start();
|
||||
|
||||
for (int i = 0; i < data.length; i++) {
|
||||
Message message = session.createTextMessage(data[i]);
|
||||
message.setStringProperty("stringProperty",data[i]);
|
||||
message.setIntProperty("intProperty",i);
|
||||
|
||||
if (verbose) {
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("About to send a topic message: " + message + " with text: " + data[i]);
|
||||
}
|
||||
}
|
||||
|
||||
producer.send(producerDestination, message);
|
||||
}
|
||||
|
||||
// should receive a topic since there is no expiration.
|
||||
assertNotNull(consumer.receive(1000));
|
||||
}
|
||||
|
||||
|
||||
|
||||
protected MessageProducer createProducer(long timeToLive) throws JMSException {
|
||||
MessageProducer producer = session.createProducer(null);
|
||||
producer.setDeliveryMode(deliveryMode);
|
||||
producer.setTimeToLive(timeToLive);
|
||||
|
||||
return producer;
|
||||
}
|
||||
|
||||
protected MessageConsumer createConsumer() throws JMSException {
|
||||
if (durable) {
|
||||
log.info("Creating durable consumer");
|
||||
return session.createDurableSubscriber((Topic) consumerDestination, getName());
|
||||
}
|
||||
return session.createConsumer(consumerDestination);
|
||||
}
|
||||
|
||||
protected void tearDown() throws Exception {
|
||||
log.info("Dumping stats...");
|
||||
log.info("Closing down connection");
|
||||
|
||||
session.close();
|
||||
connection.close();
|
||||
}
|
||||
|
||||
}
|
||||
/**
|
||||
*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package org.apache.activemq;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
import javax.jms.Connection;
|
||||
import javax.jms.DeliveryMode;
|
||||
import javax.jms.Destination;
|
||||
import javax.jms.JMSException;
|
||||
import javax.jms.Message;
|
||||
import javax.jms.MessageConsumer;
|
||||
import javax.jms.MessageProducer;
|
||||
import javax.jms.Session;
|
||||
import javax.jms.Topic;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
public class JmsSendReceiveWithMessageExpirationTest extends TestSupport {
|
||||
|
||||
private static final org.apache.commons.logging.Log log = org.apache.commons.logging.LogFactory
|
||||
.getLog(JmsSendReceiveWithMessageExpirationTest.class);
|
||||
|
||||
protected int messageCount = 100;
|
||||
protected String[] data;
|
||||
protected Session session;
|
||||
protected Destination consumerDestination;
|
||||
protected Destination producerDestination;
|
||||
protected boolean durable = false;
|
||||
protected int deliveryMode = DeliveryMode.PERSISTENT;
|
||||
protected long timeToLive = 5000;
|
||||
protected boolean verbose = false;
|
||||
|
||||
protected Connection connection;
|
||||
|
||||
protected void setUp() throws Exception {
|
||||
|
||||
super.setUp();
|
||||
|
||||
data = new String[messageCount];
|
||||
|
||||
for (int i = 0; i < messageCount; i++) {
|
||||
data[i] = "Text for message: " + i + " at " + new Date();
|
||||
}
|
||||
|
||||
connectionFactory = createConnectionFactory();
|
||||
connection = createConnection();
|
||||
|
||||
if (durable) {
|
||||
connection.setClientID(getClass().getName());
|
||||
}
|
||||
|
||||
session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test consuming an expired queue.
|
||||
*
|
||||
* @throws Exception
|
||||
*/
|
||||
public void testConsumeExpiredQueue() throws Exception {
|
||||
|
||||
MessageProducer producer = createProducer(timeToLive);
|
||||
|
||||
consumerDestination = session.createQueue(getConsumerSubject());
|
||||
producerDestination = session.createQueue(getProducerSubject());
|
||||
|
||||
MessageConsumer consumer = createConsumer();
|
||||
connection.start();
|
||||
|
||||
for (int i = 0; i < data.length; i++) {
|
||||
Message message = session.createTextMessage(data[i]);
|
||||
message.setStringProperty("stringProperty",data[i]);
|
||||
message.setIntProperty("intProperty",i);
|
||||
|
||||
if (verbose) {
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("About to send a queue message: " + message + " with text: " + data[i]);
|
||||
}
|
||||
}
|
||||
|
||||
producer.send(producerDestination, message);
|
||||
}
|
||||
|
||||
// sleeps a second longer than the expiration time.
|
||||
// Basically waits till queue expires.
|
||||
Thread.sleep(timeToLive + 1000);
|
||||
|
||||
// message should have expired.
|
||||
assertNull(consumer.receive(1000));
|
||||
}
|
||||
|
||||
/**
|
||||
* Sends and consumes the messages to a queue destination.
|
||||
*
|
||||
* @throws Exception
|
||||
*/
|
||||
public void testConsumeQueue() throws Exception {
|
||||
|
||||
MessageProducer producer = createProducer(0);
|
||||
|
||||
consumerDestination = session.createQueue(getConsumerSubject());
|
||||
producerDestination = session.createQueue(getProducerSubject());
|
||||
|
||||
MessageConsumer consumer = createConsumer();
|
||||
connection.start();
|
||||
|
||||
for (int i = 0; i < data.length; i++) {
|
||||
Message message = session.createTextMessage(data[i]);
|
||||
message.setStringProperty("stringProperty",data[i]);
|
||||
message.setIntProperty("intProperty",i);
|
||||
|
||||
if (verbose) {
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("About to send a queue message: " + message + " with text: " + data[i]);
|
||||
}
|
||||
}
|
||||
|
||||
producer.send(producerDestination, message);
|
||||
}
|
||||
|
||||
// should receive a queue since there is no expiration.
|
||||
assertNotNull(consumer.receive(1000));
|
||||
}
|
||||
|
||||
/**
|
||||
* Test consuming an expired topic.
|
||||
*
|
||||
* @throws Exception
|
||||
*/
|
||||
public void testConsumeExpiredTopic() throws Exception {
|
||||
|
||||
MessageProducer producer = createProducer(timeToLive);
|
||||
|
||||
consumerDestination = session.createTopic(getConsumerSubject());
|
||||
producerDestination = session.createTopic(getProducerSubject());
|
||||
|
||||
MessageConsumer consumer = createConsumer();
|
||||
connection.start();
|
||||
|
||||
for (int i = 0; i < data.length; i++) {
|
||||
Message message = session.createTextMessage(data[i]);
|
||||
message.setStringProperty("stringProperty",data[i]);
|
||||
message.setIntProperty("intProperty",i);
|
||||
|
||||
if (verbose) {
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("About to send a topic message: " + message + " with text: " + data[i]);
|
||||
}
|
||||
}
|
||||
|
||||
producer.send(producerDestination, message);
|
||||
}
|
||||
|
||||
// sleeps a second longer than the expiration time.
|
||||
// Basically waits till topic expires.
|
||||
Thread.sleep(timeToLive + 1000);
|
||||
|
||||
// message should have expired.
|
||||
assertNull(consumer.receive(1000));
|
||||
}
|
||||
|
||||
/**
|
||||
* Sends and consumes the messages to a topic destination.
|
||||
*
|
||||
* @throws Exception
|
||||
*/
|
||||
public void testConsumeTopic() throws Exception {
|
||||
|
||||
MessageProducer producer = createProducer(0);
|
||||
|
||||
consumerDestination = session.createTopic(getConsumerSubject());
|
||||
producerDestination = session.createTopic(getProducerSubject());
|
||||
|
||||
MessageConsumer consumer = createConsumer();
|
||||
connection.start();
|
||||
|
||||
for (int i = 0; i < data.length; i++) {
|
||||
Message message = session.createTextMessage(data[i]);
|
||||
message.setStringProperty("stringProperty",data[i]);
|
||||
message.setIntProperty("intProperty",i);
|
||||
|
||||
if (verbose) {
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("About to send a topic message: " + message + " with text: " + data[i]);
|
||||
}
|
||||
}
|
||||
|
||||
producer.send(producerDestination, message);
|
||||
}
|
||||
|
||||
// should receive a topic since there is no expiration.
|
||||
assertNotNull(consumer.receive(1000));
|
||||
}
|
||||
|
||||
|
||||
|
||||
protected MessageProducer createProducer(long timeToLive) throws JMSException {
|
||||
MessageProducer producer = session.createProducer(null);
|
||||
producer.setDeliveryMode(deliveryMode);
|
||||
producer.setTimeToLive(timeToLive);
|
||||
|
||||
return producer;
|
||||
}
|
||||
|
||||
protected MessageConsumer createConsumer() throws JMSException {
|
||||
if (durable) {
|
||||
log.info("Creating durable consumer");
|
||||
return session.createDurableSubscriber((Topic) consumerDestination, getName());
|
||||
}
|
||||
return session.createConsumer(consumerDestination);
|
||||
}
|
||||
|
||||
protected void tearDown() throws Exception {
|
||||
log.info("Dumping stats...");
|
||||
log.info("Closing down connection");
|
||||
|
||||
session.close();
|
||||
connection.close();
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -15,310 +15,310 @@
|
|||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package org.apache.activemq.network;
|
||||
|
||||
import java.net.URI;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Iterator;
|
||||
|
||||
import javax.jms.Connection;
|
||||
import javax.jms.Destination;
|
||||
import javax.jms.JMSException;
|
||||
import javax.jms.Message;
|
||||
import javax.jms.MessageConsumer;
|
||||
import javax.jms.MessageProducer;
|
||||
import javax.jms.Session;
|
||||
|
||||
import junit.framework.TestCase;
|
||||
|
||||
import org.apache.activemq.ActiveMQConnectionFactory;
|
||||
import org.apache.activemq.advisory.ConsumerEvent;
|
||||
import org.apache.activemq.advisory.ConsumerEventSource;
|
||||
import org.apache.activemq.advisory.ConsumerListener;
|
||||
import org.apache.activemq.broker.BrokerFactory;
|
||||
import org.apache.activemq.broker.BrokerService;
|
||||
import org.apache.activemq.command.ActiveMQQueue;
|
||||
import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
|
||||
import edu.emory.mathcs.backport.java.util.concurrent.atomic.AtomicInteger;
|
||||
|
||||
/**
|
||||
* These test cases are used to verifiy that network connections get re established in all broker
|
||||
* restart scenarios.
|
||||
*
|
||||
* @author chirino
|
||||
*/
|
||||
public class NetworkReconnectTest extends TestCase {
|
||||
|
||||
protected static final Log log = LogFactory.getLog(NetworkReconnectTest.class);
|
||||
|
||||
private BrokerService producerBroker;
|
||||
private BrokerService consumerBroker;
|
||||
private ActiveMQConnectionFactory producerConnectionFactory;
|
||||
private ActiveMQConnectionFactory consumerConnectionFactory;
|
||||
private Destination destination;
|
||||
private ArrayList connections = new ArrayList();
|
||||
|
||||
public void testMultipleProducerBrokerRestarts() throws Exception {
|
||||
for (int i = 0; i < 10; i++) {
|
||||
testWithProducerBrokerRestart();
|
||||
disposeConsumerConnections();
|
||||
}
|
||||
}
|
||||
|
||||
public void testWithoutRestarts() throws Exception {
|
||||
startProducerBroker();
|
||||
startConsumerBroker();
|
||||
|
||||
MessageConsumer consumer = createConsumer();
|
||||
AtomicInteger counter = createConsumerCounter(producerConnectionFactory);
|
||||
waitForConsumerToArrive(counter);
|
||||
|
||||
String messageId = sendMessage();
|
||||
Message message = consumer.receive(1000);
|
||||
|
||||
assertEquals(messageId, message.getJMSMessageID());
|
||||
|
||||
assertNull( consumer.receiveNoWait() );
|
||||
|
||||
}
|
||||
|
||||
public void testWithProducerBrokerRestart() throws Exception {
|
||||
startProducerBroker();
|
||||
startConsumerBroker();
|
||||
|
||||
MessageConsumer consumer = createConsumer();
|
||||
AtomicInteger counter = createConsumerCounter(producerConnectionFactory);
|
||||
waitForConsumerToArrive(counter);
|
||||
|
||||
String messageId = sendMessage();
|
||||
Message message = consumer.receive(1000);
|
||||
|
||||
assertEquals(messageId, message.getJMSMessageID());
|
||||
assertNull( consumer.receiveNoWait() );
|
||||
|
||||
// Restart the first broker...
|
||||
stopProducerBroker();
|
||||
startProducerBroker();
|
||||
|
||||
counter = createConsumerCounter(producerConnectionFactory);
|
||||
waitForConsumerToArrive(counter);
|
||||
|
||||
messageId = sendMessage();
|
||||
message = consumer.receive(1000);
|
||||
|
||||
assertEquals(messageId, message.getJMSMessageID());
|
||||
assertNull( consumer.receiveNoWait() );
|
||||
|
||||
}
|
||||
|
||||
public void testWithConsumerBrokerRestart() throws Exception {
|
||||
|
||||
startProducerBroker();
|
||||
startConsumerBroker();
|
||||
|
||||
MessageConsumer consumer = createConsumer();
|
||||
AtomicInteger counter = createConsumerCounter(producerConnectionFactory);
|
||||
waitForConsumerToArrive(counter);
|
||||
|
||||
String messageId = sendMessage();
|
||||
Message message = consumer.receive(1000);
|
||||
|
||||
assertEquals(messageId, message.getJMSMessageID());
|
||||
assertNull( consumer.receiveNoWait() );
|
||||
|
||||
// Restart the first broker...
|
||||
stopConsumerBroker();
|
||||
waitForConsumerToLeave(counter);
|
||||
startConsumerBroker();
|
||||
|
||||
consumer = createConsumer();
|
||||
waitForConsumerToArrive(counter);
|
||||
|
||||
messageId = sendMessage();
|
||||
message = consumer.receive(1000);
|
||||
|
||||
assertEquals(messageId, message.getJMSMessageID());
|
||||
assertNull( consumer.receiveNoWait() );
|
||||
|
||||
}
|
||||
|
||||
public void testWithConsumerBrokerStartDelay() throws Exception {
|
||||
|
||||
startConsumerBroker();
|
||||
MessageConsumer consumer = createConsumer();
|
||||
|
||||
Thread.sleep(1000*5);
|
||||
|
||||
startProducerBroker();
|
||||
AtomicInteger counter = createConsumerCounter(producerConnectionFactory);
|
||||
waitForConsumerToArrive(counter);
|
||||
|
||||
String messageId = sendMessage();
|
||||
Message message = consumer.receive(1000);
|
||||
|
||||
assertEquals(messageId, message.getJMSMessageID());
|
||||
|
||||
assertNull( consumer.receiveNoWait() );
|
||||
|
||||
}
|
||||
|
||||
|
||||
public void testWithProducerBrokerStartDelay() throws Exception {
|
||||
|
||||
startProducerBroker();
|
||||
AtomicInteger counter = createConsumerCounter(producerConnectionFactory);
|
||||
|
||||
Thread.sleep(1000*5);
|
||||
|
||||
startConsumerBroker();
|
||||
MessageConsumer consumer = createConsumer();
|
||||
|
||||
waitForConsumerToArrive(counter);
|
||||
|
||||
String messageId = sendMessage();
|
||||
Message message = consumer.receive(1000);
|
||||
|
||||
assertEquals(messageId, message.getJMSMessageID());
|
||||
|
||||
assertNull( consumer.receiveNoWait() );
|
||||
|
||||
}
|
||||
|
||||
protected void setUp() throws Exception {
|
||||
|
||||
log.info("===============================================================================");
|
||||
log.info("Running Test Case: "+getName());
|
||||
log.info("===============================================================================");
|
||||
|
||||
producerConnectionFactory = createProducerConnectionFactory();
|
||||
consumerConnectionFactory = createConsumerConnectionFactory();
|
||||
destination = new ActiveMQQueue("RECONNECT.TEST.QUEUE");
|
||||
|
||||
}
|
||||
|
||||
protected void tearDown() throws Exception {
|
||||
disposeConsumerConnections();
|
||||
try {
|
||||
stopProducerBroker();
|
||||
} catch (Throwable e) {
|
||||
}
|
||||
try {
|
||||
stopConsumerBroker();
|
||||
} catch (Throwable e) {
|
||||
}
|
||||
}
|
||||
|
||||
protected void disposeConsumerConnections() {
|
||||
for (Iterator iter = connections.iterator(); iter.hasNext();) {
|
||||
Connection connection = (Connection) iter.next();
|
||||
try { connection.close(); } catch (Throwable ignore) {}
|
||||
}
|
||||
}
|
||||
|
||||
protected void startProducerBroker() throws Exception {
|
||||
if( producerBroker==null ) {
|
||||
producerBroker = createFirstBroker();
|
||||
producerBroker.start();
|
||||
}
|
||||
}
|
||||
|
||||
protected void stopProducerBroker() throws Exception {
|
||||
if( producerBroker!=null ) {
|
||||
producerBroker.stop();
|
||||
producerBroker=null;
|
||||
}
|
||||
}
|
||||
|
||||
protected void startConsumerBroker() throws Exception {
|
||||
if( consumerBroker==null ) {
|
||||
consumerBroker = createSecondBroker();
|
||||
consumerBroker.start();
|
||||
}
|
||||
}
|
||||
|
||||
protected void stopConsumerBroker() throws Exception {
|
||||
if( consumerBroker!=null ) {
|
||||
consumerBroker.stop();
|
||||
consumerBroker=null;
|
||||
}
|
||||
}
|
||||
|
||||
protected BrokerService createFirstBroker() throws Exception {
|
||||
return BrokerFactory.createBroker(new URI("xbean:org/apache/activemq/network/reconnect-broker1.xml"));
|
||||
}
|
||||
|
||||
protected BrokerService createSecondBroker() throws Exception {
|
||||
return BrokerFactory.createBroker(new URI("xbean:org/apache/activemq/network/reconnect-broker2.xml"));
|
||||
}
|
||||
|
||||
protected ActiveMQConnectionFactory createProducerConnectionFactory() {
|
||||
return new ActiveMQConnectionFactory("vm://broker1");
|
||||
}
|
||||
|
||||
protected ActiveMQConnectionFactory createConsumerConnectionFactory() {
|
||||
return new ActiveMQConnectionFactory("vm://broker2");
|
||||
}
|
||||
|
||||
protected String sendMessage() throws JMSException {
|
||||
Connection connection = null;
|
||||
try {
|
||||
connection = producerConnectionFactory.createConnection();
|
||||
Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
|
||||
MessageProducer producer = session.createProducer(destination);
|
||||
Message message = session.createMessage();
|
||||
producer.send(message);
|
||||
return message.getJMSMessageID();
|
||||
} finally {
|
||||
try { connection.close(); } catch (Throwable ignore) {}
|
||||
}
|
||||
}
|
||||
|
||||
protected MessageConsumer createConsumer() throws JMSException {
|
||||
Connection connection = consumerConnectionFactory.createConnection();
|
||||
connections.add(connection);
|
||||
connection.start();
|
||||
|
||||
Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
|
||||
return session.createConsumer(destination);
|
||||
}
|
||||
|
||||
protected AtomicInteger createConsumerCounter(ActiveMQConnectionFactory cf) throws Exception {
|
||||
final AtomicInteger rc = new AtomicInteger(0);
|
||||
Connection connection = cf.createConnection();
|
||||
connections.add(connection);
|
||||
connection.start();
|
||||
|
||||
ConsumerEventSource source = new ConsumerEventSource(connection, destination);
|
||||
source.setConsumerListener(new ConsumerListener(){
|
||||
public void onConsumerEvent(ConsumerEvent event) {
|
||||
rc.set(event.getConsumerCount());
|
||||
}
|
||||
});
|
||||
source.start();
|
||||
|
||||
return rc;
|
||||
}
|
||||
|
||||
protected void waitForConsumerToArrive(AtomicInteger consumerCounter) throws InterruptedException {
|
||||
for( int i=0; i < 100; i++ ) {
|
||||
if( consumerCounter.get() > 0 ) {
|
||||
return;
|
||||
}
|
||||
Thread.sleep(100);
|
||||
}
|
||||
fail("The consumer did not arrive.");
|
||||
}
|
||||
|
||||
protected void waitForConsumerToLeave(AtomicInteger consumerCounter) throws InterruptedException {
|
||||
for( int i=0; i < 100; i++ ) {
|
||||
if( consumerCounter.get() == 0 ) {
|
||||
return;
|
||||
}
|
||||
Thread.sleep(100);
|
||||
}
|
||||
fail("The consumer did not leave.");
|
||||
}
|
||||
|
||||
}
|
||||
package org.apache.activemq.network;
|
||||
|
||||
import java.net.URI;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Iterator;
|
||||
|
||||
import javax.jms.Connection;
|
||||
import javax.jms.Destination;
|
||||
import javax.jms.JMSException;
|
||||
import javax.jms.Message;
|
||||
import javax.jms.MessageConsumer;
|
||||
import javax.jms.MessageProducer;
|
||||
import javax.jms.Session;
|
||||
|
||||
import junit.framework.TestCase;
|
||||
|
||||
import org.apache.activemq.ActiveMQConnectionFactory;
|
||||
import org.apache.activemq.advisory.ConsumerEvent;
|
||||
import org.apache.activemq.advisory.ConsumerEventSource;
|
||||
import org.apache.activemq.advisory.ConsumerListener;
|
||||
import org.apache.activemq.broker.BrokerFactory;
|
||||
import org.apache.activemq.broker.BrokerService;
|
||||
import org.apache.activemq.command.ActiveMQQueue;
|
||||
import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
|
||||
import edu.emory.mathcs.backport.java.util.concurrent.atomic.AtomicInteger;
|
||||
|
||||
/**
|
||||
* These test cases are used to verifiy that network connections get re established in all broker
|
||||
* restart scenarios.
|
||||
*
|
||||
* @author chirino
|
||||
*/
|
||||
public class NetworkReconnectTest extends TestCase {
|
||||
|
||||
protected static final Log log = LogFactory.getLog(NetworkReconnectTest.class);
|
||||
|
||||
private BrokerService producerBroker;
|
||||
private BrokerService consumerBroker;
|
||||
private ActiveMQConnectionFactory producerConnectionFactory;
|
||||
private ActiveMQConnectionFactory consumerConnectionFactory;
|
||||
private Destination destination;
|
||||
private ArrayList connections = new ArrayList();
|
||||
|
||||
public void testMultipleProducerBrokerRestarts() throws Exception {
|
||||
for (int i = 0; i < 10; i++) {
|
||||
testWithProducerBrokerRestart();
|
||||
disposeConsumerConnections();
|
||||
}
|
||||
}
|
||||
|
||||
public void testWithoutRestarts() throws Exception {
|
||||
startProducerBroker();
|
||||
startConsumerBroker();
|
||||
|
||||
MessageConsumer consumer = createConsumer();
|
||||
AtomicInteger counter = createConsumerCounter(producerConnectionFactory);
|
||||
waitForConsumerToArrive(counter);
|
||||
|
||||
String messageId = sendMessage();
|
||||
Message message = consumer.receive(1000);
|
||||
|
||||
assertEquals(messageId, message.getJMSMessageID());
|
||||
|
||||
assertNull( consumer.receiveNoWait() );
|
||||
|
||||
}
|
||||
|
||||
public void testWithProducerBrokerRestart() throws Exception {
|
||||
startProducerBroker();
|
||||
startConsumerBroker();
|
||||
|
||||
MessageConsumer consumer = createConsumer();
|
||||
AtomicInteger counter = createConsumerCounter(producerConnectionFactory);
|
||||
waitForConsumerToArrive(counter);
|
||||
|
||||
String messageId = sendMessage();
|
||||
Message message = consumer.receive(1000);
|
||||
|
||||
assertEquals(messageId, message.getJMSMessageID());
|
||||
assertNull( consumer.receiveNoWait() );
|
||||
|
||||
// Restart the first broker...
|
||||
stopProducerBroker();
|
||||
startProducerBroker();
|
||||
|
||||
counter = createConsumerCounter(producerConnectionFactory);
|
||||
waitForConsumerToArrive(counter);
|
||||
|
||||
messageId = sendMessage();
|
||||
message = consumer.receive(1000);
|
||||
|
||||
assertEquals(messageId, message.getJMSMessageID());
|
||||
assertNull( consumer.receiveNoWait() );
|
||||
|
||||
}
|
||||
|
||||
public void testWithConsumerBrokerRestart() throws Exception {
|
||||
|
||||
startProducerBroker();
|
||||
startConsumerBroker();
|
||||
|
||||
MessageConsumer consumer = createConsumer();
|
||||
AtomicInteger counter = createConsumerCounter(producerConnectionFactory);
|
||||
waitForConsumerToArrive(counter);
|
||||
|
||||
String messageId = sendMessage();
|
||||
Message message = consumer.receive(1000);
|
||||
|
||||
assertEquals(messageId, message.getJMSMessageID());
|
||||
assertNull( consumer.receiveNoWait() );
|
||||
|
||||
// Restart the first broker...
|
||||
stopConsumerBroker();
|
||||
waitForConsumerToLeave(counter);
|
||||
startConsumerBroker();
|
||||
|
||||
consumer = createConsumer();
|
||||
waitForConsumerToArrive(counter);
|
||||
|
||||
messageId = sendMessage();
|
||||
message = consumer.receive(1000);
|
||||
|
||||
assertEquals(messageId, message.getJMSMessageID());
|
||||
assertNull( consumer.receiveNoWait() );
|
||||
|
||||
}
|
||||
|
||||
public void testWithConsumerBrokerStartDelay() throws Exception {
|
||||
|
||||
startConsumerBroker();
|
||||
MessageConsumer consumer = createConsumer();
|
||||
|
||||
Thread.sleep(1000*5);
|
||||
|
||||
startProducerBroker();
|
||||
AtomicInteger counter = createConsumerCounter(producerConnectionFactory);
|
||||
waitForConsumerToArrive(counter);
|
||||
|
||||
String messageId = sendMessage();
|
||||
Message message = consumer.receive(1000);
|
||||
|
||||
assertEquals(messageId, message.getJMSMessageID());
|
||||
|
||||
assertNull( consumer.receiveNoWait() );
|
||||
|
||||
}
|
||||
|
||||
|
||||
public void testWithProducerBrokerStartDelay() throws Exception {
|
||||
|
||||
startProducerBroker();
|
||||
AtomicInteger counter = createConsumerCounter(producerConnectionFactory);
|
||||
|
||||
Thread.sleep(1000*5);
|
||||
|
||||
startConsumerBroker();
|
||||
MessageConsumer consumer = createConsumer();
|
||||
|
||||
waitForConsumerToArrive(counter);
|
||||
|
||||
String messageId = sendMessage();
|
||||
Message message = consumer.receive(1000);
|
||||
|
||||
assertEquals(messageId, message.getJMSMessageID());
|
||||
|
||||
assertNull( consumer.receiveNoWait() );
|
||||
|
||||
}
|
||||
|
||||
protected void setUp() throws Exception {
|
||||
|
||||
log.info("===============================================================================");
|
||||
log.info("Running Test Case: "+getName());
|
||||
log.info("===============================================================================");
|
||||
|
||||
producerConnectionFactory = createProducerConnectionFactory();
|
||||
consumerConnectionFactory = createConsumerConnectionFactory();
|
||||
destination = new ActiveMQQueue("RECONNECT.TEST.QUEUE");
|
||||
|
||||
}
|
||||
|
||||
protected void tearDown() throws Exception {
|
||||
disposeConsumerConnections();
|
||||
try {
|
||||
stopProducerBroker();
|
||||
} catch (Throwable e) {
|
||||
}
|
||||
try {
|
||||
stopConsumerBroker();
|
||||
} catch (Throwable e) {
|
||||
}
|
||||
}
|
||||
|
||||
protected void disposeConsumerConnections() {
|
||||
for (Iterator iter = connections.iterator(); iter.hasNext();) {
|
||||
Connection connection = (Connection) iter.next();
|
||||
try { connection.close(); } catch (Throwable ignore) {}
|
||||
}
|
||||
}
|
||||
|
||||
protected void startProducerBroker() throws Exception {
|
||||
if( producerBroker==null ) {
|
||||
producerBroker = createFirstBroker();
|
||||
producerBroker.start();
|
||||
}
|
||||
}
|
||||
|
||||
protected void stopProducerBroker() throws Exception {
|
||||
if( producerBroker!=null ) {
|
||||
producerBroker.stop();
|
||||
producerBroker=null;
|
||||
}
|
||||
}
|
||||
|
||||
protected void startConsumerBroker() throws Exception {
|
||||
if( consumerBroker==null ) {
|
||||
consumerBroker = createSecondBroker();
|
||||
consumerBroker.start();
|
||||
}
|
||||
}
|
||||
|
||||
protected void stopConsumerBroker() throws Exception {
|
||||
if( consumerBroker!=null ) {
|
||||
consumerBroker.stop();
|
||||
consumerBroker=null;
|
||||
}
|
||||
}
|
||||
|
||||
protected BrokerService createFirstBroker() throws Exception {
|
||||
return BrokerFactory.createBroker(new URI("xbean:org/apache/activemq/network/reconnect-broker1.xml"));
|
||||
}
|
||||
|
||||
protected BrokerService createSecondBroker() throws Exception {
|
||||
return BrokerFactory.createBroker(new URI("xbean:org/apache/activemq/network/reconnect-broker2.xml"));
|
||||
}
|
||||
|
||||
protected ActiveMQConnectionFactory createProducerConnectionFactory() {
|
||||
return new ActiveMQConnectionFactory("vm://broker1");
|
||||
}
|
||||
|
||||
protected ActiveMQConnectionFactory createConsumerConnectionFactory() {
|
||||
return new ActiveMQConnectionFactory("vm://broker2");
|
||||
}
|
||||
|
||||
protected String sendMessage() throws JMSException {
|
||||
Connection connection = null;
|
||||
try {
|
||||
connection = producerConnectionFactory.createConnection();
|
||||
Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
|
||||
MessageProducer producer = session.createProducer(destination);
|
||||
Message message = session.createMessage();
|
||||
producer.send(message);
|
||||
return message.getJMSMessageID();
|
||||
} finally {
|
||||
try { connection.close(); } catch (Throwable ignore) {}
|
||||
}
|
||||
}
|
||||
|
||||
protected MessageConsumer createConsumer() throws JMSException {
|
||||
Connection connection = consumerConnectionFactory.createConnection();
|
||||
connections.add(connection);
|
||||
connection.start();
|
||||
|
||||
Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
|
||||
return session.createConsumer(destination);
|
||||
}
|
||||
|
||||
protected AtomicInteger createConsumerCounter(ActiveMQConnectionFactory cf) throws Exception {
|
||||
final AtomicInteger rc = new AtomicInteger(0);
|
||||
Connection connection = cf.createConnection();
|
||||
connections.add(connection);
|
||||
connection.start();
|
||||
|
||||
ConsumerEventSource source = new ConsumerEventSource(connection, destination);
|
||||
source.setConsumerListener(new ConsumerListener(){
|
||||
public void onConsumerEvent(ConsumerEvent event) {
|
||||
rc.set(event.getConsumerCount());
|
||||
}
|
||||
});
|
||||
source.start();
|
||||
|
||||
return rc;
|
||||
}
|
||||
|
||||
protected void waitForConsumerToArrive(AtomicInteger consumerCounter) throws InterruptedException {
|
||||
for( int i=0; i < 100; i++ ) {
|
||||
if( consumerCounter.get() > 0 ) {
|
||||
return;
|
||||
}
|
||||
Thread.sleep(100);
|
||||
}
|
||||
fail("The consumer did not arrive.");
|
||||
}
|
||||
|
||||
protected void waitForConsumerToLeave(AtomicInteger consumerCounter) throws InterruptedException {
|
||||
for( int i=0; i < 100; i++ ) {
|
||||
if( consumerCounter.get() == 0 ) {
|
||||
return;
|
||||
}
|
||||
Thread.sleep(100);
|
||||
}
|
||||
fail("The consumer did not leave.");
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -15,77 +15,77 @@
|
|||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package org.apache.activemq.network;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.net.URI;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Iterator;
|
||||
|
||||
import org.apache.activemq.broker.BrokerFactory;
|
||||
import org.apache.activemq.broker.BrokerService;
|
||||
|
||||
|
||||
/**
|
||||
* Test network reconnects over SSH tunnels. This case can be especially tricky since the SSH tunnels
|
||||
* fool the TCP transport into thinking that they are initially connected.
|
||||
*
|
||||
* @author chirino
|
||||
*/
|
||||
public class SSHTunnelNetworkReconnectTest extends NetworkReconnectTest {
|
||||
|
||||
ArrayList processes = new ArrayList();
|
||||
|
||||
|
||||
protected BrokerService createFirstBroker() throws Exception {
|
||||
return BrokerFactory.createBroker(new URI("xbean:org/apache/activemq/network/ssh-reconnect-broker1.xml"));
|
||||
}
|
||||
|
||||
protected BrokerService createSecondBroker() throws Exception {
|
||||
return BrokerFactory.createBroker(new URI("xbean:org/apache/activemq/network/ssh-reconnect-broker2.xml"));
|
||||
}
|
||||
|
||||
protected void setUp() throws Exception {
|
||||
startProcess("ssh -Nn -L60006:localhost:61616 localhost");
|
||||
startProcess("ssh -Nn -L60007:localhost:61617 localhost");
|
||||
super.setUp();
|
||||
}
|
||||
|
||||
protected void tearDown() throws Exception {
|
||||
super.tearDown();
|
||||
for (Iterator iter = processes.iterator(); iter.hasNext();) {
|
||||
Process p = (Process) iter.next();
|
||||
p.destroy();
|
||||
}
|
||||
}
|
||||
|
||||
private void startProcess(String command) throws IOException {
|
||||
final Process process = Runtime.getRuntime().exec(command);
|
||||
processes.add(process);
|
||||
new Thread("stdout: "+command){
|
||||
public void run() {
|
||||
try {
|
||||
InputStream is = process.getInputStream();
|
||||
int c;
|
||||
while((c=is.read())>=0) {
|
||||
System.out.write(c);
|
||||
}
|
||||
} catch (IOException e) {
|
||||
}
|
||||
}
|
||||
}.start();
|
||||
new Thread("stderr: "+command){
|
||||
public void run() {
|
||||
try {
|
||||
InputStream is = process.getErrorStream();
|
||||
int c;
|
||||
while((c=is.read())>=0) {
|
||||
System.err.write(c);
|
||||
}
|
||||
} catch (IOException e) {
|
||||
}
|
||||
}
|
||||
}.start();
|
||||
}
|
||||
}
|
||||
package org.apache.activemq.network;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.net.URI;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Iterator;
|
||||
|
||||
import org.apache.activemq.broker.BrokerFactory;
|
||||
import org.apache.activemq.broker.BrokerService;
|
||||
|
||||
|
||||
/**
|
||||
* Test network reconnects over SSH tunnels. This case can be especially tricky since the SSH tunnels
|
||||
* fool the TCP transport into thinking that they are initially connected.
|
||||
*
|
||||
* @author chirino
|
||||
*/
|
||||
public class SSHTunnelNetworkReconnectTest extends NetworkReconnectTest {
|
||||
|
||||
ArrayList processes = new ArrayList();
|
||||
|
||||
|
||||
protected BrokerService createFirstBroker() throws Exception {
|
||||
return BrokerFactory.createBroker(new URI("xbean:org/apache/activemq/network/ssh-reconnect-broker1.xml"));
|
||||
}
|
||||
|
||||
protected BrokerService createSecondBroker() throws Exception {
|
||||
return BrokerFactory.createBroker(new URI("xbean:org/apache/activemq/network/ssh-reconnect-broker2.xml"));
|
||||
}
|
||||
|
||||
protected void setUp() throws Exception {
|
||||
startProcess("ssh -Nn -L60006:localhost:61616 localhost");
|
||||
startProcess("ssh -Nn -L60007:localhost:61617 localhost");
|
||||
super.setUp();
|
||||
}
|
||||
|
||||
protected void tearDown() throws Exception {
|
||||
super.tearDown();
|
||||
for (Iterator iter = processes.iterator(); iter.hasNext();) {
|
||||
Process p = (Process) iter.next();
|
||||
p.destroy();
|
||||
}
|
||||
}
|
||||
|
||||
private void startProcess(String command) throws IOException {
|
||||
final Process process = Runtime.getRuntime().exec(command);
|
||||
processes.add(process);
|
||||
new Thread("stdout: "+command){
|
||||
public void run() {
|
||||
try {
|
||||
InputStream is = process.getInputStream();
|
||||
int c;
|
||||
while((c=is.read())>=0) {
|
||||
System.out.write(c);
|
||||
}
|
||||
} catch (IOException e) {
|
||||
}
|
||||
}
|
||||
}.start();
|
||||
new Thread("stderr: "+command){
|
||||
public void run() {
|
||||
try {
|
||||
InputStream is = process.getErrorStream();
|
||||
int c;
|
||||
while((c=is.read())>=0) {
|
||||
System.err.write(c);
|
||||
}
|
||||
} catch (IOException e) {
|
||||
}
|
||||
}
|
||||
}.start();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,78 +1,78 @@
|
|||
/**
|
||||
*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package org.apache.activemq.filter;
|
||||
|
||||
import java.io.StringReader;
|
||||
|
||||
import javax.jms.BytesMessage;
|
||||
import javax.jms.JMSException;
|
||||
import javax.jms.TextMessage;
|
||||
import javax.xml.xpath.XPath;
|
||||
import javax.xml.xpath.XPathConstants;
|
||||
import javax.xml.xpath.XPathExpressionException;
|
||||
import javax.xml.xpath.XPathFactory;
|
||||
|
||||
import org.apache.activemq.command.Message;
|
||||
import org.apache.activemq.util.ByteArrayInputStream;
|
||||
import org.xml.sax.InputSource;
|
||||
|
||||
public class JAXPXPathEvaluator implements XPathExpression.XPathEvaluator {
|
||||
|
||||
private static final XPathFactory factory = XPathFactory.newInstance();
|
||||
private javax.xml.xpath.XPathExpression expression;
|
||||
|
||||
public JAXPXPathEvaluator(String xpathExpression) {
|
||||
try {
|
||||
XPath xpath = factory.newXPath();
|
||||
expression = xpath.compile(xpathExpression);
|
||||
} catch (XPathExpressionException e) {
|
||||
throw new RuntimeException("Invalid XPath expression: "+xpathExpression);
|
||||
}
|
||||
}
|
||||
|
||||
public boolean evaluate(Message message) throws JMSException {
|
||||
if( message instanceof TextMessage ) {
|
||||
String text = ((TextMessage)message).getText();
|
||||
return evaluate(text);
|
||||
} else if ( message instanceof BytesMessage ) {
|
||||
BytesMessage bm = (BytesMessage) message;
|
||||
byte data[] = new byte[(int) bm.getBodyLength()];
|
||||
bm.readBytes(data);
|
||||
return evaluate(data);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
private boolean evaluate(byte[] data) {
|
||||
try {
|
||||
InputSource inputSource = new InputSource(new ByteArrayInputStream(data));
|
||||
return ((Boolean)expression.evaluate(inputSource, XPathConstants.BOOLEAN)).booleanValue();
|
||||
} catch (XPathExpressionException e) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
private boolean evaluate(String text) {
|
||||
try {
|
||||
InputSource inputSource = new InputSource(new StringReader(text));
|
||||
return ((Boolean)expression.evaluate(inputSource, XPathConstants.BOOLEAN)).booleanValue();
|
||||
} catch (XPathExpressionException e) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
/**
|
||||
*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package org.apache.activemq.filter;
|
||||
|
||||
import java.io.StringReader;
|
||||
|
||||
import javax.jms.BytesMessage;
|
||||
import javax.jms.JMSException;
|
||||
import javax.jms.TextMessage;
|
||||
import javax.xml.xpath.XPath;
|
||||
import javax.xml.xpath.XPathConstants;
|
||||
import javax.xml.xpath.XPathExpressionException;
|
||||
import javax.xml.xpath.XPathFactory;
|
||||
|
||||
import org.apache.activemq.command.Message;
|
||||
import org.apache.activemq.util.ByteArrayInputStream;
|
||||
import org.xml.sax.InputSource;
|
||||
|
||||
public class JAXPXPathEvaluator implements XPathExpression.XPathEvaluator {
|
||||
|
||||
private static final XPathFactory factory = XPathFactory.newInstance();
|
||||
private javax.xml.xpath.XPathExpression expression;
|
||||
|
||||
public JAXPXPathEvaluator(String xpathExpression) {
|
||||
try {
|
||||
XPath xpath = factory.newXPath();
|
||||
expression = xpath.compile(xpathExpression);
|
||||
} catch (XPathExpressionException e) {
|
||||
throw new RuntimeException("Invalid XPath expression: "+xpathExpression);
|
||||
}
|
||||
}
|
||||
|
||||
public boolean evaluate(Message message) throws JMSException {
|
||||
if( message instanceof TextMessage ) {
|
||||
String text = ((TextMessage)message).getText();
|
||||
return evaluate(text);
|
||||
} else if ( message instanceof BytesMessage ) {
|
||||
BytesMessage bm = (BytesMessage) message;
|
||||
byte data[] = new byte[(int) bm.getBodyLength()];
|
||||
bm.readBytes(data);
|
||||
return evaluate(data);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
private boolean evaluate(byte[] data) {
|
||||
try {
|
||||
InputSource inputSource = new InputSource(new ByteArrayInputStream(data));
|
||||
return ((Boolean)expression.evaluate(inputSource, XPathConstants.BOOLEAN)).booleanValue();
|
||||
} catch (XPathExpressionException e) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
private boolean evaluate(String text) {
|
||||
try {
|
||||
InputSource inputSource = new InputSource(new StringReader(text));
|
||||
return ((Boolean)expression.evaluate(inputSource, XPathConstants.BOOLEAN)).booleanValue();
|
||||
} catch (XPathExpressionException e) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,62 +1,62 @@
|
|||
/**
|
||||
*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.apache.activemq.filter;
|
||||
|
||||
import javax.jms.BytesMessage;
|
||||
import javax.jms.JMSException;
|
||||
import javax.jms.TextMessage;
|
||||
|
||||
import org.apache.activemq.command.Message;
|
||||
import org.apache.activemq.util.ByteArrayInputStream;
|
||||
import org.apache.xmlbeans.XmlObject;
|
||||
|
||||
public class XMLBeansXPathEvaluator implements XPathExpression.XPathEvaluator {
|
||||
|
||||
private final String xpath;
|
||||
|
||||
public XMLBeansXPathEvaluator(String xpath) {
|
||||
this.xpath = xpath;
|
||||
}
|
||||
|
||||
public boolean evaluate(Message message) throws JMSException {
|
||||
if( message instanceof TextMessage ) {
|
||||
String text = ((TextMessage)message).getText();
|
||||
try {
|
||||
XmlObject object = XmlObject.Factory.parse(text);
|
||||
XmlObject[] objects = object.selectPath(xpath);
|
||||
return object!=null && objects.length>0;
|
||||
} catch (Throwable e) {
|
||||
return false;
|
||||
}
|
||||
|
||||
} else if ( message instanceof BytesMessage ) {
|
||||
BytesMessage bm = (BytesMessage) message;
|
||||
byte data[] = new byte[(int) bm.getBodyLength()];
|
||||
bm.readBytes(data);
|
||||
try {
|
||||
XmlObject object = XmlObject.Factory.parse(new ByteArrayInputStream(data));
|
||||
XmlObject[] objects = object.selectPath(xpath);
|
||||
return object!=null && objects.length>0;
|
||||
} catch (Throwable e) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
||||
/**
|
||||
*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.apache.activemq.filter;
|
||||
|
||||
import javax.jms.BytesMessage;
|
||||
import javax.jms.JMSException;
|
||||
import javax.jms.TextMessage;
|
||||
|
||||
import org.apache.activemq.command.Message;
|
||||
import org.apache.activemq.util.ByteArrayInputStream;
|
||||
import org.apache.xmlbeans.XmlObject;
|
||||
|
||||
public class XMLBeansXPathEvaluator implements XPathExpression.XPathEvaluator {
|
||||
|
||||
private final String xpath;
|
||||
|
||||
public XMLBeansXPathEvaluator(String xpath) {
|
||||
this.xpath = xpath;
|
||||
}
|
||||
|
||||
public boolean evaluate(Message message) throws JMSException {
|
||||
if( message instanceof TextMessage ) {
|
||||
String text = ((TextMessage)message).getText();
|
||||
try {
|
||||
XmlObject object = XmlObject.Factory.parse(text);
|
||||
XmlObject[] objects = object.selectPath(xpath);
|
||||
return object!=null && objects.length>0;
|
||||
} catch (Throwable e) {
|
||||
return false;
|
||||
}
|
||||
|
||||
} else if ( message instanceof BytesMessage ) {
|
||||
BytesMessage bm = (BytesMessage) message;
|
||||
byte data[] = new byte[(int) bm.getBodyLength()];
|
||||
bm.readBytes(data);
|
||||
try {
|
||||
XmlObject object = XmlObject.Factory.parse(new ByteArrayInputStream(data));
|
||||
XmlObject[] objects = object.selectPath(xpath);
|
||||
return object!=null && objects.length>0;
|
||||
} catch (Throwable e) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -1,92 +1,92 @@
|
|||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=equal
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=1
|
||||
sysTest.totalDests=1
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
consumer.durable=false
|
||||
consumer.asyncRecv=true
|
||||
consumer.destName=queue://TEST.FOO
|
||||
consumer.sessTransacted=false
|
||||
consumer.sessAckMode=autoAck
|
||||
consumer.destComposite=false
|
||||
consumer.unsubscribe=true
|
||||
# 5 mins receive duration
|
||||
consumer.recvType=time
|
||||
consumer.recvDuration=300000
|
||||
# 1 million messages receive
|
||||
# consumer.recvType=count
|
||||
# consumer.recvCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=equal
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=1
|
||||
sysTest.totalDests=1
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
consumer.durable=false
|
||||
consumer.asyncRecv=true
|
||||
consumer.destName=queue://TEST.FOO
|
||||
consumer.sessTransacted=false
|
||||
consumer.sessAckMode=autoAck
|
||||
consumer.destComposite=false
|
||||
consumer.unsubscribe=true
|
||||
# 5 mins receive duration
|
||||
consumer.recvType=time
|
||||
consumer.recvDuration=300000
|
||||
# 1 million messages receive
|
||||
# consumer.recvType=count
|
||||
# consumer.recvCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
|
|
|
@ -1,92 +1,92 @@
|
|||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=equal
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=1
|
||||
sysTest.totalDests=1
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
consumer.durable=true
|
||||
consumer.asyncRecv=true
|
||||
consumer.destName=topic://TEST.FOO
|
||||
consumer.sessTransacted=false
|
||||
consumer.sessAckMode=autoAck
|
||||
consumer.destComposite=false
|
||||
consumer.unsubscribe=true
|
||||
# 5 mins receive duration
|
||||
consumer.recvType=time
|
||||
consumer.recvDuration=300000
|
||||
# 1 million messages receive
|
||||
# consumer.recvType=count
|
||||
# consumer.recvCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=equal
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=1
|
||||
sysTest.totalDests=1
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
consumer.durable=true
|
||||
consumer.asyncRecv=true
|
||||
consumer.destName=topic://TEST.FOO
|
||||
consumer.sessTransacted=false
|
||||
consumer.sessAckMode=autoAck
|
||||
consumer.destComposite=false
|
||||
consumer.unsubscribe=true
|
||||
# 5 mins receive duration
|
||||
consumer.recvType=time
|
||||
consumer.recvDuration=300000
|
||||
# 1 million messages receive
|
||||
# consumer.recvType=count
|
||||
# consumer.recvCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
|
|
|
@ -1,92 +1,92 @@
|
|||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=equal
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=1
|
||||
sysTest.totalDests=1
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
consumer.durable=false
|
||||
consumer.asyncRecv=true
|
||||
consumer.destName=topic://TEST.FOO
|
||||
consumer.sessTransacted=false
|
||||
consumer.sessAckMode=autoAck
|
||||
consumer.destComposite=false
|
||||
consumer.unsubscribe=true
|
||||
# 5 mins receive duration
|
||||
consumer.recvType=time
|
||||
consumer.recvDuration=300000
|
||||
# 1 million messages receive
|
||||
# consumer.recvType=count
|
||||
# consumer.recvCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=equal
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=1
|
||||
sysTest.totalDests=1
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
consumer.durable=false
|
||||
consumer.asyncRecv=true
|
||||
consumer.destName=topic://TEST.FOO
|
||||
consumer.sessTransacted=false
|
||||
consumer.sessAckMode=autoAck
|
||||
consumer.destComposite=false
|
||||
consumer.unsubscribe=true
|
||||
# 5 mins receive duration
|
||||
consumer.recvType=time
|
||||
consumer.recvDuration=300000
|
||||
# 1 million messages receive
|
||||
# consumer.recvType=count
|
||||
# consumer.recvCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
|
|
|
@ -1,92 +1,92 @@
|
|||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=equal
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=10
|
||||
sysTest.totalDests=1
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
consumer.durable=false
|
||||
consumer.asyncRecv=true
|
||||
consumer.destName=queue://TEST.FOO
|
||||
consumer.sessTransacted=false
|
||||
consumer.sessAckMode=autoAck
|
||||
consumer.destComposite=false
|
||||
consumer.unsubscribe=true
|
||||
# 5 mins receive duration
|
||||
consumer.recvType=time
|
||||
consumer.recvDuration=300000
|
||||
# 1 million messages receive
|
||||
# consumer.recvType=count
|
||||
# consumer.recvCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=equal
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=10
|
||||
sysTest.totalDests=1
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
consumer.durable=false
|
||||
consumer.asyncRecv=true
|
||||
consumer.destName=queue://TEST.FOO
|
||||
consumer.sessTransacted=false
|
||||
consumer.sessAckMode=autoAck
|
||||
consumer.destComposite=false
|
||||
consumer.unsubscribe=true
|
||||
# 5 mins receive duration
|
||||
consumer.recvType=time
|
||||
consumer.recvDuration=300000
|
||||
# 1 million messages receive
|
||||
# consumer.recvType=count
|
||||
# consumer.recvCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
|
|
|
@ -1,92 +1,92 @@
|
|||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=equal
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=10
|
||||
sysTest.totalDests=1
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
consumer.durable=true
|
||||
consumer.asyncRecv=true
|
||||
consumer.destName=topic://TEST.FOO
|
||||
consumer.sessTransacted=false
|
||||
consumer.sessAckMode=autoAck
|
||||
consumer.destComposite=false
|
||||
consumer.unsubscribe=true
|
||||
# 5 mins receive duration
|
||||
consumer.recvType=time
|
||||
consumer.recvDuration=300000
|
||||
# 1 million messages receive
|
||||
# consumer.recvType=count
|
||||
# consumer.recvCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=equal
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=10
|
||||
sysTest.totalDests=1
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
consumer.durable=true
|
||||
consumer.asyncRecv=true
|
||||
consumer.destName=topic://TEST.FOO
|
||||
consumer.sessTransacted=false
|
||||
consumer.sessAckMode=autoAck
|
||||
consumer.destComposite=false
|
||||
consumer.unsubscribe=true
|
||||
# 5 mins receive duration
|
||||
consumer.recvType=time
|
||||
consumer.recvDuration=300000
|
||||
# 1 million messages receive
|
||||
# consumer.recvType=count
|
||||
# consumer.recvCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
|
|
|
@ -1,92 +1,92 @@
|
|||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=equal
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=10
|
||||
sysTest.totalDests=1
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
consumer.durable=false
|
||||
consumer.asyncRecv=true
|
||||
consumer.destName=topic://TEST.FOO
|
||||
consumer.sessTransacted=false
|
||||
consumer.sessAckMode=autoAck
|
||||
consumer.destComposite=false
|
||||
consumer.unsubscribe=true
|
||||
# 5 mins receive duration
|
||||
consumer.recvType=time
|
||||
consumer.recvDuration=300000
|
||||
# 1 million messages receive
|
||||
# consumer.recvType=count
|
||||
# consumer.recvCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=equal
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=10
|
||||
sysTest.totalDests=1
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
consumer.durable=false
|
||||
consumer.asyncRecv=true
|
||||
consumer.destName=topic://TEST.FOO
|
||||
consumer.sessTransacted=false
|
||||
consumer.sessAckMode=autoAck
|
||||
consumer.destComposite=false
|
||||
consumer.unsubscribe=true
|
||||
# 5 mins receive duration
|
||||
consumer.recvType=time
|
||||
consumer.recvDuration=300000
|
||||
# 1 million messages receive
|
||||
# consumer.recvType=count
|
||||
# consumer.recvCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
|
|
|
@ -1,92 +1,92 @@
|
|||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=equal
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=10
|
||||
sysTest.totalDests=10
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
consumer.durable=false
|
||||
consumer.asyncRecv=true
|
||||
consumer.destName=queue://TEST.FOO
|
||||
consumer.sessTransacted=false
|
||||
consumer.sessAckMode=autoAck
|
||||
consumer.destComposite=false
|
||||
consumer.unsubscribe=true
|
||||
# 5 mins receive duration
|
||||
consumer.recvType=time
|
||||
consumer.recvDuration=300000
|
||||
# 1 million messages receive
|
||||
# consumer.recvType=count
|
||||
# consumer.recvCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=equal
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=10
|
||||
sysTest.totalDests=10
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
consumer.durable=false
|
||||
consumer.asyncRecv=true
|
||||
consumer.destName=queue://TEST.FOO
|
||||
consumer.sessTransacted=false
|
||||
consumer.sessAckMode=autoAck
|
||||
consumer.destComposite=false
|
||||
consumer.unsubscribe=true
|
||||
# 5 mins receive duration
|
||||
consumer.recvType=time
|
||||
consumer.recvDuration=300000
|
||||
# 1 million messages receive
|
||||
# consumer.recvType=count
|
||||
# consumer.recvCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
|
|
|
@ -1,92 +1,92 @@
|
|||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=equal
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=10
|
||||
sysTest.totalDests=10
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
consumer.durable=true
|
||||
consumer.asyncRecv=true
|
||||
consumer.destName=topic://TEST.FOO
|
||||
consumer.sessTransacted=false
|
||||
consumer.sessAckMode=autoAck
|
||||
consumer.destComposite=false
|
||||
consumer.unsubscribe=true
|
||||
# 5 mins receive duration
|
||||
consumer.recvType=time
|
||||
consumer.recvDuration=300000
|
||||
# 1 million messages receive
|
||||
# consumer.recvType=count
|
||||
# consumer.recvCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=equal
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=10
|
||||
sysTest.totalDests=10
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
consumer.durable=true
|
||||
consumer.asyncRecv=true
|
||||
consumer.destName=topic://TEST.FOO
|
||||
consumer.sessTransacted=false
|
||||
consumer.sessAckMode=autoAck
|
||||
consumer.destComposite=false
|
||||
consumer.unsubscribe=true
|
||||
# 5 mins receive duration
|
||||
consumer.recvType=time
|
||||
consumer.recvDuration=300000
|
||||
# 1 million messages receive
|
||||
# consumer.recvType=count
|
||||
# consumer.recvCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
|
|
|
@ -1,92 +1,92 @@
|
|||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=equal
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=10
|
||||
sysTest.totalDests=10
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
consumer.durable=false
|
||||
consumer.asyncRecv=true
|
||||
consumer.destName=topic://TEST.FOO
|
||||
consumer.sessTransacted=false
|
||||
consumer.sessAckMode=autoAck
|
||||
consumer.destComposite=false
|
||||
consumer.unsubscribe=true
|
||||
# 5 mins receive duration
|
||||
consumer.recvType=time
|
||||
consumer.recvDuration=300000
|
||||
# 1 million messages receive
|
||||
# consumer.recvType=count
|
||||
# consumer.recvCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=equal
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=10
|
||||
sysTest.totalDests=10
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
consumer.durable=false
|
||||
consumer.asyncRecv=true
|
||||
consumer.destName=topic://TEST.FOO
|
||||
consumer.sessTransacted=false
|
||||
consumer.sessAckMode=autoAck
|
||||
consumer.destComposite=false
|
||||
consumer.unsubscribe=true
|
||||
# 5 mins receive duration
|
||||
consumer.recvType=time
|
||||
consumer.recvDuration=300000
|
||||
# 1 million messages receive
|
||||
# consumer.recvType=count
|
||||
# consumer.recvCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
|
|
|
@ -1,92 +1,92 @@
|
|||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=all
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=1
|
||||
sysTest.totalDests=1
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
producer.deliveryMode=nonpersistent
|
||||
producer.messageSize=1024
|
||||
producer.destName=queue://TEST.FOO
|
||||
producer.sessTransacted=false
|
||||
producer.sessAckMode=autoAck
|
||||
producer.createNewMsg=false
|
||||
producer.destComposite=false
|
||||
# 5 mins send duration
|
||||
producer.sendType=time
|
||||
producer.sendDuration=300000
|
||||
# 1 million messages send
|
||||
# producer.sendType=count
|
||||
# producer.sendCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=all
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=1
|
||||
sysTest.totalDests=1
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
producer.deliveryMode=nonpersistent
|
||||
producer.messageSize=1024
|
||||
producer.destName=queue://TEST.FOO
|
||||
producer.sessTransacted=false
|
||||
producer.sessAckMode=autoAck
|
||||
producer.createNewMsg=false
|
||||
producer.destComposite=false
|
||||
# 5 mins send duration
|
||||
producer.sendType=time
|
||||
producer.sendDuration=300000
|
||||
# 1 million messages send
|
||||
# producer.sendType=count
|
||||
# producer.sendCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
|
|
|
@ -1,92 +1,92 @@
|
|||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=all
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=1
|
||||
sysTest.totalDests=1
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
producer.deliveryMode=persistent
|
||||
producer.messageSize=1024
|
||||
producer.destName=queue://TEST.FOO
|
||||
producer.sessTransacted=false
|
||||
producer.sessAckMode=autoAck
|
||||
producer.createNewMsg=false
|
||||
producer.destComposite=false
|
||||
# 5 mins send duration
|
||||
producer.sendType=time
|
||||
producer.sendDuration=300000
|
||||
# 1 million messages send
|
||||
# producer.sendType=count
|
||||
# producer.sendCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=all
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=1
|
||||
sysTest.totalDests=1
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
producer.deliveryMode=persistent
|
||||
producer.messageSize=1024
|
||||
producer.destName=queue://TEST.FOO
|
||||
producer.sessTransacted=false
|
||||
producer.sessAckMode=autoAck
|
||||
producer.createNewMsg=false
|
||||
producer.destComposite=false
|
||||
# 5 mins send duration
|
||||
producer.sendType=time
|
||||
producer.sendDuration=300000
|
||||
# 1 million messages send
|
||||
# producer.sendType=count
|
||||
# producer.sendCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
|
|
|
@ -1,92 +1,92 @@
|
|||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=all
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=1
|
||||
sysTest.totalDests=1
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
producer.deliveryMode=nonpersistent
|
||||
producer.messageSize=1024
|
||||
producer.destName=topic://TEST.FOO
|
||||
producer.sessTransacted=false
|
||||
producer.sessAckMode=autoAck
|
||||
producer.createNewMsg=false
|
||||
producer.destComposite=false
|
||||
# 5 mins send duration
|
||||
producer.sendType=time
|
||||
producer.sendDuration=300000
|
||||
# 1 million messages send
|
||||
# producer.sendType=count
|
||||
# producer.sendCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=all
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=1
|
||||
sysTest.totalDests=1
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
producer.deliveryMode=nonpersistent
|
||||
producer.messageSize=1024
|
||||
producer.destName=topic://TEST.FOO
|
||||
producer.sessTransacted=false
|
||||
producer.sessAckMode=autoAck
|
||||
producer.createNewMsg=false
|
||||
producer.destComposite=false
|
||||
# 5 mins send duration
|
||||
producer.sendType=time
|
||||
producer.sendDuration=300000
|
||||
# 1 million messages send
|
||||
# producer.sendType=count
|
||||
# producer.sendCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
|
|
|
@ -1,92 +1,92 @@
|
|||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=all
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=1
|
||||
sysTest.totalDests=1
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
producer.deliveryMode=persistent
|
||||
producer.messageSize=1024
|
||||
producer.destName=topic://TEST.FOO
|
||||
producer.sessTransacted=false
|
||||
producer.sessAckMode=autoAck
|
||||
producer.createNewMsg=false
|
||||
producer.destComposite=false
|
||||
# 5 mins send duration
|
||||
producer.sendType=time
|
||||
producer.sendDuration=300000
|
||||
# 1 million messages send
|
||||
# producer.sendType=count
|
||||
# producer.sendCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=all
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=1
|
||||
sysTest.totalDests=1
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
producer.deliveryMode=persistent
|
||||
producer.messageSize=1024
|
||||
producer.destName=topic://TEST.FOO
|
||||
producer.sessTransacted=false
|
||||
producer.sessAckMode=autoAck
|
||||
producer.createNewMsg=false
|
||||
producer.destComposite=false
|
||||
# 5 mins send duration
|
||||
producer.sendType=time
|
||||
producer.sendDuration=300000
|
||||
# 1 million messages send
|
||||
# producer.sendType=count
|
||||
# producer.sendCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
|
|
|
@ -1,92 +1,92 @@
|
|||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=all
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=10
|
||||
sysTest.totalDests=1
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
producer.deliveryMode=nonpersistent
|
||||
producer.messageSize=1024
|
||||
producer.destName=queue://TEST.FOO
|
||||
producer.sessTransacted=false
|
||||
producer.sessAckMode=autoAck
|
||||
producer.createNewMsg=false
|
||||
producer.destComposite=false
|
||||
# 5 mins send duration
|
||||
producer.sendType=time
|
||||
producer.sendDuration=300000
|
||||
# 1 million messages send
|
||||
# producer.sendType=count
|
||||
# producer.sendCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=all
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=10
|
||||
sysTest.totalDests=1
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
producer.deliveryMode=nonpersistent
|
||||
producer.messageSize=1024
|
||||
producer.destName=queue://TEST.FOO
|
||||
producer.sessTransacted=false
|
||||
producer.sessAckMode=autoAck
|
||||
producer.createNewMsg=false
|
||||
producer.destComposite=false
|
||||
# 5 mins send duration
|
||||
producer.sendType=time
|
||||
producer.sendDuration=300000
|
||||
# 1 million messages send
|
||||
# producer.sendType=count
|
||||
# producer.sendCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
|
|
|
@ -1,92 +1,92 @@
|
|||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=all
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=10
|
||||
sysTest.totalDests=1
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
producer.deliveryMode=persistent
|
||||
producer.messageSize=1024
|
||||
producer.destName=queue://TEST.FOO
|
||||
producer.sessTransacted=false
|
||||
producer.sessAckMode=autoAck
|
||||
producer.createNewMsg=false
|
||||
producer.destComposite=false
|
||||
# 5 mins send duration
|
||||
producer.sendType=time
|
||||
producer.sendDuration=300000
|
||||
# 1 million messages send
|
||||
# producer.sendType=count
|
||||
# producer.sendCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=all
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=10
|
||||
sysTest.totalDests=1
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
producer.deliveryMode=persistent
|
||||
producer.messageSize=1024
|
||||
producer.destName=queue://TEST.FOO
|
||||
producer.sessTransacted=false
|
||||
producer.sessAckMode=autoAck
|
||||
producer.createNewMsg=false
|
||||
producer.destComposite=false
|
||||
# 5 mins send duration
|
||||
producer.sendType=time
|
||||
producer.sendDuration=300000
|
||||
# 1 million messages send
|
||||
# producer.sendType=count
|
||||
# producer.sendCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
|
|
|
@ -1,92 +1,92 @@
|
|||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=all
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=10
|
||||
sysTest.totalDests=1
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
producer.deliveryMode=nonpersistent
|
||||
producer.messageSize=1024
|
||||
producer.destName=topic://TEST.FOO
|
||||
producer.sessTransacted=false
|
||||
producer.sessAckMode=autoAck
|
||||
producer.createNewMsg=false
|
||||
producer.destComposite=false
|
||||
# 5 mins send duration
|
||||
producer.sendType=time
|
||||
producer.sendDuration=300000
|
||||
# 1 million messages send
|
||||
# producer.sendType=count
|
||||
# producer.sendCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=all
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=10
|
||||
sysTest.totalDests=1
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
producer.deliveryMode=nonpersistent
|
||||
producer.messageSize=1024
|
||||
producer.destName=topic://TEST.FOO
|
||||
producer.sessTransacted=false
|
||||
producer.sessAckMode=autoAck
|
||||
producer.createNewMsg=false
|
||||
producer.destComposite=false
|
||||
# 5 mins send duration
|
||||
producer.sendType=time
|
||||
producer.sendDuration=300000
|
||||
# 1 million messages send
|
||||
# producer.sendType=count
|
||||
# producer.sendCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
|
|
|
@ -1,92 +1,92 @@
|
|||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=all
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=10
|
||||
sysTest.totalDests=1
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
producer.deliveryMode=persistent
|
||||
producer.messageSize=1024
|
||||
producer.destName=topic://TEST.FOO
|
||||
producer.sessTransacted=false
|
||||
producer.sessAckMode=autoAck
|
||||
producer.createNewMsg=false
|
||||
producer.destComposite=false
|
||||
# 5 mins send duration
|
||||
producer.sendType=time
|
||||
producer.sendDuration=300000
|
||||
# 1 million messages send
|
||||
# producer.sendType=count
|
||||
# producer.sendCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=all
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=10
|
||||
sysTest.totalDests=1
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
producer.deliveryMode=persistent
|
||||
producer.messageSize=1024
|
||||
producer.destName=topic://TEST.FOO
|
||||
producer.sessTransacted=false
|
||||
producer.sessAckMode=autoAck
|
||||
producer.createNewMsg=false
|
||||
producer.destComposite=false
|
||||
# 5 mins send duration
|
||||
producer.sendType=time
|
||||
producer.sendDuration=300000
|
||||
# 1 million messages send
|
||||
# producer.sendType=count
|
||||
# producer.sendCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
|
|
|
@ -1,92 +1,92 @@
|
|||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=all
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=10
|
||||
sysTest.totalDests=10
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
producer.deliveryMode=nonpersistent
|
||||
producer.messageSize=1024
|
||||
producer.destName=queue://TEST.FOO
|
||||
producer.sessTransacted=false
|
||||
producer.sessAckMode=autoAck
|
||||
producer.createNewMsg=false
|
||||
producer.destComposite=false
|
||||
# 5 mins send duration
|
||||
producer.sendType=time
|
||||
producer.sendDuration=300000
|
||||
# 1 million messages send
|
||||
# producer.sendType=count
|
||||
# producer.sendCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=all
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=10
|
||||
sysTest.totalDests=10
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
producer.deliveryMode=nonpersistent
|
||||
producer.messageSize=1024
|
||||
producer.destName=queue://TEST.FOO
|
||||
producer.sessTransacted=false
|
||||
producer.sessAckMode=autoAck
|
||||
producer.createNewMsg=false
|
||||
producer.destComposite=false
|
||||
# 5 mins send duration
|
||||
producer.sendType=time
|
||||
producer.sendDuration=300000
|
||||
# 1 million messages send
|
||||
# producer.sendType=count
|
||||
# producer.sendCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
|
|
|
@ -1,92 +1,92 @@
|
|||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=all
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=10
|
||||
sysTest.totalDests=10
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
producer.deliveryMode=persistent
|
||||
producer.messageSize=1024
|
||||
producer.destName=queue://TEST.FOO
|
||||
producer.sessTransacted=false
|
||||
producer.sessAckMode=autoAck
|
||||
producer.createNewMsg=false
|
||||
producer.destComposite=false
|
||||
# 5 mins send duration
|
||||
producer.sendType=time
|
||||
producer.sendDuration=300000
|
||||
# 1 million messages send
|
||||
# producer.sendType=count
|
||||
# producer.sendCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=all
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=10
|
||||
sysTest.totalDests=10
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
producer.deliveryMode=persistent
|
||||
producer.messageSize=1024
|
||||
producer.destName=queue://TEST.FOO
|
||||
producer.sessTransacted=false
|
||||
producer.sessAckMode=autoAck
|
||||
producer.createNewMsg=false
|
||||
producer.destComposite=false
|
||||
# 5 mins send duration
|
||||
producer.sendType=time
|
||||
producer.sendDuration=300000
|
||||
# 1 million messages send
|
||||
# producer.sendType=count
|
||||
# producer.sendCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
|
|
|
@ -1,92 +1,92 @@
|
|||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=all
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=10
|
||||
sysTest.totalDests=10
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
producer.deliveryMode=nonpersistent
|
||||
producer.messageSize=1024
|
||||
producer.destName=topic://TEST.FOO
|
||||
producer.sessTransacted=false
|
||||
producer.sessAckMode=autoAck
|
||||
producer.createNewMsg=false
|
||||
producer.destComposite=false
|
||||
# 5 mins send duration
|
||||
producer.sendType=time
|
||||
producer.sendDuration=300000
|
||||
# 1 million messages send
|
||||
# producer.sendType=count
|
||||
# producer.sendCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=all
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=10
|
||||
sysTest.totalDests=10
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
producer.deliveryMode=nonpersistent
|
||||
producer.messageSize=1024
|
||||
producer.destName=topic://TEST.FOO
|
||||
producer.sessTransacted=false
|
||||
producer.sessAckMode=autoAck
|
||||
producer.createNewMsg=false
|
||||
producer.destComposite=false
|
||||
# 5 mins send duration
|
||||
producer.sendType=time
|
||||
producer.sendDuration=300000
|
||||
# 1 million messages send
|
||||
# producer.sendType=count
|
||||
# producer.sendCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
|
|
|
@ -1,92 +1,92 @@
|
|||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=all
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=10
|
||||
sysTest.totalDests=10
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
producer.deliveryMode=persistent
|
||||
producer.messageSize=1024
|
||||
producer.destName=topic://TEST.FOO
|
||||
producer.sessTransacted=false
|
||||
producer.sessAckMode=autoAck
|
||||
producer.createNewMsg=false
|
||||
producer.destComposite=false
|
||||
# 5 mins send duration
|
||||
producer.sendType=time
|
||||
producer.sendDuration=300000
|
||||
# 1 million messages send
|
||||
# producer.sendType=count
|
||||
# producer.sendCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
## ---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
## ---------------------------------------------------------------------------
|
||||
|
||||
# Consumer System Settings
|
||||
sysTest.spiClass=org.apache.activemq.tool.spi.ActiveMQReflectionSPI
|
||||
sysTest.reportType=xml
|
||||
sysTest.destDistro=all
|
||||
sysTest.samplers=tp
|
||||
sysTest.numClients=10
|
||||
sysTest.totalDests=10
|
||||
sysTest.reportDir=./
|
||||
|
||||
# Consumer Client Settings
|
||||
producer.deliveryMode=persistent
|
||||
producer.messageSize=1024
|
||||
producer.destName=topic://TEST.FOO
|
||||
producer.sessTransacted=false
|
||||
producer.sessAckMode=autoAck
|
||||
producer.createNewMsg=false
|
||||
producer.destComposite=false
|
||||
# 5 mins send duration
|
||||
producer.sendType=time
|
||||
producer.sendDuration=300000
|
||||
# 1 million messages send
|
||||
# producer.sendType=count
|
||||
# producer.sendCount=1000000
|
||||
|
||||
# Throughput Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
tpSampler.duration=300000
|
||||
tpSampler.rampUpTime=60000
|
||||
tpSampler.rampDownTime=60000
|
||||
tpSampler.interval=1000
|
||||
|
||||
# CPU Sampler Settings
|
||||
# 5 mins sampling duration
|
||||
# 1 min ramp up and ramp down time
|
||||
# 1 sec sampling interval
|
||||
# cpuSampler.duration=300000
|
||||
# cpuSampler.rampUpTime=60000
|
||||
# cpuSampler.rampDownTime=60000
|
||||
# cpuSampler.interval=1000
|
||||
|
||||
# AMQ Connection Factory Settings
|
||||
# Use default settings
|
||||
# factory.brokerURL=tcp://localhost:61616
|
||||
# factory.useAsyncSend=false
|
||||
# factory.asyncDispatch=false
|
||||
# factory.alwaysSessionAsync=true
|
||||
# factory.useCompression=false
|
||||
# factory.optimizeAcknowledge=false
|
||||
# factory.objectMessageSerializationDefered=false
|
||||
# factory.disableTimeStampsByDefault=false
|
||||
# factory.optimizedMessageDispatch=true
|
||||
# factory.useRetroactiveConsumer=false
|
||||
# factory.copyMessageOnSend=true
|
||||
# factory.closeTimeout=15000
|
||||
|
||||
# factory.userName=null
|
||||
# factory.clientID=null
|
||||
# factory.password=null
|
||||
|
||||
# factory.prefetchPolicy.durableTopicPrefetch=100
|
||||
# factory.prefetchPolicy.topicPrefetch=32766
|
||||
# factory.prefetchPolicy.queueBrowserPrefetch=500
|
||||
# factory.prefetchPolicy.queuePrefetch=1000
|
||||
# factory.prefetchPolicy.inputStreamPrefetch=100
|
||||
# factory.prefetchPolicy.maximumPendingMessageLimit=0
|
||||
# factory.prefetchPolicy.optimizeDurableTopicPrefetch=1000
|
||||
|
||||
# factory.redeliveryPolicy.initialRedeliveryDelay=1000
|
||||
# factory.redeliveryPolicy.maximumRedeliveries=5
|
||||
# factory.redeliveryPolicy.useCollisionAvoidance=false
|
||||
# factory.redeliveryPolicy.useExponentialBackOff=false
|
||||
# factory.redeliveryPolicy.collisionAvoidancePercent=15
|
||||
# factory.redeliveryPolicy.backOffMultiplier=5
|
||||
|
|
|
@ -1,21 +1,21 @@
|
|||
##---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
##---------------------------------------------------------------------------
|
||||
|
||||
# -------------------------------------------------------------------
|
||||
# Build Properties
|
||||
# -------------------------------------------------------------------
|
||||
|
||||
##---------------------------------------------------------------------------
|
||||
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
## contributor license agreements. See the NOTICE file distributed with
|
||||
## this work for additional information regarding copyright ownership.
|
||||
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
## (the "License"); you may not use this file except in compliance with
|
||||
## the License. You may obtain a copy of the License at
|
||||
##
|
||||
## http://www.apache.org/licenses/LICENSE-2.0
|
||||
##
|
||||
## Unless required by applicable law or agreed to in writing, software
|
||||
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
## See the License for the specific language governing permissions and
|
||||
## limitations under the License.
|
||||
##---------------------------------------------------------------------------
|
||||
|
||||
# -------------------------------------------------------------------
|
||||
# Build Properties
|
||||
# -------------------------------------------------------------------
|
||||
|
||||
|
|
|
@ -35,6 +35,7 @@
|
|||
<include>**/*.so</include>
|
||||
<include>**/*.ks</include>
|
||||
<include>**/*.ts</include>
|
||||
<include>**/*.keystore</include>
|
||||
</includes>
|
||||
</fileSet>
|
||||
|
||||
|
@ -55,6 +56,7 @@
|
|||
<exclude>**/*.so</exclude>
|
||||
<exclude>**/*.ks</exclude>
|
||||
<exclude>**/*.ts</exclude>
|
||||
<exclude>**/*.keystore</exclude>
|
||||
<exclude>**/svn-commit*</exclude>
|
||||
<exclude>**/target</exclude>
|
||||
<exclude>**/target/**/*</exclude>
|
||||
|
|
|
@ -35,6 +35,7 @@
|
|||
<include>**/*.so</include>
|
||||
<include>**/*.ks</include>
|
||||
<include>**/*.ts</include>
|
||||
<include>**/*.keystore</include>
|
||||
</includes>
|
||||
</fileSet>
|
||||
|
||||
|
@ -55,6 +56,7 @@
|
|||
<exclude>**/*.so</exclude>
|
||||
<exclude>**/*.ks</exclude>
|
||||
<exclude>**/*.ts</exclude>
|
||||
<exclude>**/*.keystore</exclude>
|
||||
<exclude>**/svn-commit*</exclude>
|
||||
<exclude>**/target</exclude>
|
||||
<exclude>**/target/**</exclude>
|
||||
|
|
Loading…
Reference in New Issue