Τροποποιήστε το αρχείο %ACTIVEMQ_BASE%/conf/activemq.xml, το όνομα χρήστη και ο κωδικός πρόσβασης αποθηκεύονται στο αρχείο %ACTIVEMQ_BASE%/conf/credentials.properties,
activemq.xml λεπτομέρειες έχουν ως εξής:
<!-- Με άδεια χρήσης στο Apache Software Foundation (ASF) με ένα ή περισσότερα συμφωνίες άδειας χρήσης συνεισφέροντος. Δείτε το αρχείο NOTICE που διανεμήθηκε με αυτό το έργο για πρόσθετες πληροφορίες σχετικά με την ιδιοκτησία πνευματικών δικαιωμάτων. Το ASF σας χορηγεί άδεια χρήσης αυτού του αρχείου με την άδεια Apache, Έκδοση 2.0 (η «Άδεια»)· Δεν μπορείτε να χρησιμοποιήσετε αυτό το αρχείο παρά μόνο σε συμμόρφωση με την Άδεια. Μπορείτε να λάβετε αντίγραφο της Άδειας στη διεύθυνση
http://www.apache.org/licenses/LICENSE-2.0
Εκτός εάν απαιτείται από την ισχύουσα νομοθεσία ή συμφωνηθεί εγγράφως, το λογισμικό διανέμεται σύμφωνα με την Άδεια διανέμεται «ΩΣ ΕΧΕΙ», ΧΩΡΙΣ ΕΓΓΥΗΣΕΙΣ Ή ΠΡΟΫΠΟΘΕΣΕΙΣ ΟΠΟΙΟΥΔΗΠΟΤΕ ΕΙΔΟΥΣ, ρητές ή σιωπηρές. Δείτε την Άδεια για τη συγκεκριμένη γλώσσα που διέπει τα δικαιώματα και περιορισμούς βάσει της Άδειας. --> <!-- START SNIPPET: παράδειγμα --> <φασόλια xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://activemq.apache.org/schema/core http://activemq.apache.org/schema/core/activemq-core.xsd">
<!-- Μας επιτρέπει να χρησιμοποιούμε τις ιδιότητες του συστήματος ως μεταβλητές σε αυτό το αρχείο διαμόρφωσης --> <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <όνομα ιδιότητας="τοποθεσίες"> <value>Αρχείο:${activemq.conf}/credentials.properties</value> </property> </bean>
<!-- Επιτρέπει την αναζήτηση αρχείων καταγραφής στην κονσόλα hawtio --> <bean id="logQuery" class="org.fusesource.insight.log.log4j.Log4jLogQuery" lazy-init="false" scope="singleton" init-method="έναρξη" destroy-method="διακοπή"> </bean>
<!-- Το <broker> στοιχείο χρησιμοποιείται για τη διαμόρφωση του μεσίτη ActiveMQ. --> <broker xmlns="http://activemq.apache.org/schema/core" brokerName="localhost" dataDirectory="${activemq.data}" useJmx="true">
<destinationPolicy> <policyMap> <policyEntries> <policyEntry queue=">" producerFlowControl="true" memoryLimit="1mb"> <!-- Η constantPendingMessageLimitStrategy χρησιμοποιείται για να αποτρέψει Οι καταναλωτές αργούν να μπλοκάρουν τους παραγωγούς και να επηρεάσουν άλλους καταναλωτές περιορίζοντας τον αριθμό των μηνυμάτων που διατηρούνται Για περισσότερες πληροφορίες, βλέπε:
http://activemq.apache.org/slow-consumer-handling.html
--> <!-- Στρατηγική διανομής - > <dispatchPolicy> <!-- Κατανομή διαδοχικά - > <strictOrderDispatchPolicy/> </dispatchPolicy> <!-- Στρατηγική Ανάκαμψης - > <subscriptionRecoveryPolicy> <!-- Ανάκτηση μόνο του τελευταίου μηνύματος --> <lastImageSubscriptionRecoveryPolicy/> </subscriptionRecoveryPolicy> <pendingQueuePolicy> <!-- Πρώτα αποθηκεύει την αναφορά μηνύματος στη μνήμη και εάν η χρήση μνήμης έχει μεγιστοποιηθεί, η αναφορά μηνύματος αποθηκεύεται σε ένα προσωρινό αρχείο --> <fileQueueCursor/> </pendingQueuePolicy> <pendingMessageLimitStrategy> <constantPendingMessageLimitStrategy limit="1000"/> </pendingMessageLimitStrategy> </policyEntry>
<!-- Βιογραφικό – > <policyEntry queue="PER.>" producerFlowControl="true" memoryLimit="10mb"> <!-- Η constantPendingMessageLimitStrategy χρησιμοποιείται για να αποτρέψει Οι καταναλωτές αργούν να μπλοκάρουν τους παραγωγούς και να επηρεάσουν άλλους καταναλωτές περιορίζοντας τον αριθμό των μηνυμάτων που διατηρούνται Για περισσότερες πληροφορίες, βλέπε:
http://activemq.apache.org/slow-consumer-handling.html
--> <!-- Στρατηγική διανομής - > <dispatchPolicy> <!-- Κατανομή διαδοχικά - > <strictOrderDispatchPolicy/> </dispatchPolicy> <!-- Στρατηγική Ανάκαμψης - > <subscriptionRecoveryPolicy> <!-- Ανάκτηση μόνο του τελευταίου μηνύματος --> <lastImageSubscriptionRecoveryPolicy/> </subscriptionRecoveryPolicy> <pendingQueuePolicy> <!-- Πρώτα αποθηκεύει την αναφορά μηνύματος στη μνήμη και εάν η χρήση μνήμης έχει μεγιστοποιηθεί, η αναφορά μηνύματος αποθηκεύεται σε ένα προσωρινό αρχείο --> <fileQueueCursor/> </pendingQueuePolicy> <pendingMessageLimitStrategy> <constantPendingMessageLimitStrategy limit="1000"/> </pendingMessageLimitStrategy> </policyEntry>
<!-- Επιχειρήσεις - > <policyEntry queue="COM.>" producerFlowControl="true" memoryLimit="10mb"> <!-- Η constantPendingMessageLimitStrategy χρησιμοποιείται για να αποτρέψει Οι καταναλωτές αργούν να μπλοκάρουν τους παραγωγούς και να επηρεάσουν άλλους καταναλωτές περιορίζοντας τον αριθμό των μηνυμάτων που διατηρούνται Για περισσότερες πληροφορίες, βλέπε:
http://activemq.apache.org/slow-consumer-handling.html
--> <!-- Στρατηγική διανομής - > <dispatchPolicy> <!-- Κατανομή διαδοχικά - > <strictOrderDispatchPolicy/> </dispatchPolicy> <!-- Στρατηγική Ανάκαμψης - > <subscriptionRecoveryPolicy> <!-- Ανάκτηση μόνο του τελευταίου μηνύματος --> <lastImageSubscriptionRecoveryPolicy/> </subscriptionRecoveryPolicy> <pendingQueuePolicy> <!-- Πρώτα αποθηκεύει την αναφορά μηνύματος στη μνήμη και εάν η χρήση μνήμης έχει μεγιστοποιηθεί, η αναφορά μηνύματος αποθηκεύεται σε ένα προσωρινό αρχείο --> <fileQueueCursor/> </pendingQueuePolicy> <pendingMessageLimitStrategy> <constantPendingMessageLimitStrategy limit="1000"/> </pendingMessageLimitStrategy> </policyEntry>
<!-- Έκθεση εργασίας – > <policyEntry queue="RECR.>" producerFlowControl="true" memoryLimit="10mb"> <!-- Η constantPendingMessageLimitStrategy χρησιμοποιείται για να αποτρέψει Οι καταναλωτές αργούν να μπλοκάρουν τους παραγωγούς και να επηρεάσουν άλλους καταναλωτές περιορίζοντας τον αριθμό των μηνυμάτων που διατηρούνται Για περισσότερες πληροφορίες, βλέπε:
http://activemq.apache.org/slow-consumer-handling.html
--> <!-- Στρατηγική διανομής - > <dispatchPolicy> <!-- Κατανομή διαδοχικά - > <strictOrderDispatchPolicy/> </dispatchPolicy> <!-- Στρατηγική Ανάκαμψης - > <subscriptionRecoveryPolicy> <!-- Ανάκτηση μόνο του τελευταίου μηνύματος --> <lastImageSubscriptionRecoveryPolicy/> </subscriptionRecoveryPolicy> <pendingQueuePolicy> <!-- Πρώτα αποθηκεύει την αναφορά μηνύματος στη μνήμη και εάν η χρήση μνήμης έχει μεγιστοποιηθεί, η αναφορά μηνύματος αποθηκεύεται σε ένα προσωρινό αρχείο --> <fileQueueCursor/> </pendingQueuePolicy> <pendingMessageLimitStrategy> <constantPendingMessageLimitStrategy limit="1000"/> </pendingMessageLimitStrategy> </policyEntry>
<!-- Μικροπροσλήψεις --> <policyEntry queue="MCOM.>" producerFlowControl="true" memoryLimit="10mb"> <!-- Η constantPendingMessageLimitStrategy χρησιμοποιείται για να αποτρέψει Οι καταναλωτές αργούν να μπλοκάρουν τους παραγωγούς και να επηρεάσουν άλλους καταναλωτές περιορίζοντας τον αριθμό των μηνυμάτων που διατηρούνται Για περισσότερες πληροφορίες, βλέπε:
http://activemq.apache.org/slow-consumer-handling.html
--> <!-- Στρατηγική διανομής - > <dispatchPolicy> <!-- Κατανομή διαδοχικά - > <strictOrderDispatchPolicy/> </dispatchPolicy> <!-- Στρατηγική Ανάκαμψης - > <subscriptionRecoveryPolicy> <!-- Ανάκτηση μόνο του τελευταίου μηνύματος --> <lastImageSubscriptionRecoveryPolicy/> </subscriptionRecoveryPolicy> <pendingQueuePolicy> <!-- Πρώτα αποθηκεύει την αναφορά μηνύματος στη μνήμη και εάν η χρήση μνήμης έχει μεγιστοποιηθεί, η αναφορά μηνύματος αποθηκεύεται σε ένα προσωρινό αρχείο --> <fileQueueCursor/> </pendingQueuePolicy> <pendingMessageLimitStrategy> <constantPendingMessageLimitStrategy limit="1000"/> </pendingMessageLimitStrategy> </policyEntry>
<!-- Αναζήτηση εργασίας Micro - > <policyEntry queue="MPER.>" producerFlowControl="true" memoryLimit="10mb"> <!-- Η constantPendingMessageLimitStrategy χρησιμοποιείται για να αποτρέψει Οι καταναλωτές αργούν να μπλοκάρουν τους παραγωγούς και να επηρεάσουν άλλους καταναλωτές περιορίζοντας τον αριθμό των μηνυμάτων που διατηρούνται Για περισσότερες πληροφορίες, βλέπε:
http://activemq.apache.org/slow-consumer-handling.html
--> <!-- Στρατηγική διανομής - > <dispatchPolicy> <!-- Κατανομή διαδοχικά - > <strictOrderDispatchPolicy/> </dispatchPolicy> <!-- Στρατηγική Ανάκαμψης - > <subscriptionRecoveryPolicy> <!-- Ανάκτηση μόνο του τελευταίου μηνύματος --> <lastImageSubscriptionRecoveryPolicy/> </subscriptionRecoveryPolicy> <pendingQueuePolicy> <!-- Πρώτα αποθηκεύει την αναφορά μηνύματος στη μνήμη και εάν η χρήση μνήμης έχει μεγιστοποιηθεί, η αναφορά μηνύματος αποθηκεύεται σε ένα προσωρινό αρχείο --> <fileQueueCursor/> </pendingQueuePolicy> <pendingMessageLimitStrategy> <constantPendingMessageLimitStrategy limit="1000"/> </pendingMessageLimitStrategy> </policyEntry>
<!-- Backend - > <policyEntry queue="ERP.>" producerFlowControl="true" memoryLimit="10mb"> <!-- Η constantPendingMessageLimitStrategy χρησιμοποιείται για να αποτρέψει Οι καταναλωτές αργούν να μπλοκάρουν τους παραγωγούς και να επηρεάσουν άλλους καταναλωτές περιορίζοντας τον αριθμό των μηνυμάτων που διατηρούνται Για περισσότερες πληροφορίες, βλέπε:
http://activemq.apache.org/slow-consumer-handling.html
--> <!-- Στρατηγική διανομής - > <dispatchPolicy> <!-- Κατανομή διαδοχικά - > <strictOrderDispatchPolicy/> </dispatchPolicy> <!-- Στρατηγική Ανάκαμψης - > <subscriptionRecoveryPolicy> <!-- Ανάκτηση μόνο του τελευταίου μηνύματος --> <lastImageSubscriptionRecoveryPolicy/> </subscriptionRecoveryPolicy> <pendingQueuePolicy> <!-- Πρώτα αποθηκεύει την αναφορά μηνύματος στη μνήμη και εάν η χρήση μνήμης έχει μεγιστοποιηθεί, η αναφορά μηνύματος αποθηκεύεται σε ένα προσωρινό αρχείο --> <fileQueueCursor/> </pendingQueuePolicy> <pendingMessageLimitStrategy> <constantPendingMessageLimitStrategy limit="1000"/> </pendingMessageLimitStrategy> </policyEntry> </policyEntries> </policyMap> </destinationPolicy>
<!-- Το managementContext χρησιμοποιείται για τη διαμόρφωση του τρόπου έκθεσης του ActiveMQ στο JMX. Από προεπιλογή, το ActiveMQ χρησιμοποιεί το διακομιστή MBean που ξεκινά από το JVM. Για περισσότερες πληροφορίες, βλέπε:
http://activemq.apache.org/jmx.html --> <managementContext> <managementContext createConnector="false"/> </managementContext>
<!-- Διαμορφώστε την επιμονή του μηνύματος για τον μεσίτη. Η προεπιλεγμένη διατήρηση Ο μηχανισμός είναι ο χώρος αποθήκευσης KahaDB (που προσδιορίζεται από την ετικέτα kahaDB). Για περισσότερες πληροφορίες, βλέπε:
http://activemq.apache.org/persistence.html --> <persistenceAdapter> <kahaDB directory="E:/activemq_data" enableJournalDiskSyncs="false" indexWriteBatchSize="1000" indexCacheSize="10000" journalMaxFileLength="32mb"
/> </persistenceAdapter>
<plugins> <!-- Διαμόρφωση ελέγχου ταυτότητας. Όνομα χρήστη, κωδικοί πρόσβασης και ομάδες --> <simpleAuthenticationPlugin> <users> <authenticationUser username="${activemq.username}" password="${activemq.password}" groups="admins"/> <authenticationUser username="${per.username}" password="${per.password}" groups="personal"/> <authenticationUser username="${mper.username}" password="${mper.password}" groups="mpersonal"/> <authenticationUser username="${com.username}" password="${com.password}" groups="company"/> <authenticationUser username="${mcom.username}" password="${mcom.password}" groups="mcompany"/> <authenticationUser username="${erp.username}" password="${erp.password}" groups="erp"/> <authenticationUser username="${recr.username}" password="${recr.password}" groups="recr"/> </users> </simpleAuthenticationPlugin>
<!-- Ας διαμορφώσουμε έναν μηχανισμό εξουσιοδότησης βάσει προορισμού --> <authorizationPlugin> <map> <authorizationMap> <authorizationEntries> <authorizationEntry queue=">" read="admins" write="admins" admin="admins" /> <authorizationEntry queue="PER.>" read="personal, mpersonal, company, mcompany, erp, recr" write="personal" admin="personal" /> <authorizationEntry queue="MPER.>" read="personal, mpersonal, company, mcompany, erp, recr" write="mpersonal" admin="mpersonal" /> <authorizationEntry queue="COM.>" read="personal, mpersonal, company, mcompany, erp, recr" write="company" admin="company" /> <authorizationEntry queue="MCOM.>" read="personal, mpersonal, company, mcompany, erp, recr" write="mcompany" admin="mcompany" /> <authorizationEntry queue="ERP.>" read="personal, mpersonal, company, mcompany, erp, recr" write="erp" admin="erp" /> <authorizationEntry queue="RECR.>" read="personal, mpersonal, company, mcompany, erp, recr" write="recr" admin="recr" />
<authorizationEntry topic="ActiveMQ.Advisory.>" read="personal, mpersonal, company, mcompany, erp, recr" write="personal, mpersonal, company, mcompany, erp, recr" admin="personal, mpersonal, company, mcompany, erp, recr" /> </authorizationEntries> </authorizationMap> </map> </authorizationPlugin> </plugins>
<!-- Το systemUsage ελέγχει το μέγιστο χώρο που θα κάνει ο μεσίτης πριν απενεργοποιήσετε την προσωρινή αποθήκευση και/ή επιβραδύνετε τους παραγωγούς. Για περισσότερες πληροφορίες, βλέπε:
http://activemq.apache.org/producer-flow-control.html --> <systemUsage> <systemUsage> <memoryUsage> <memoryUsage percentOfJvmHeap="100" /> </memoryUsage> <storeUsage> <storeUsage limit="1 gb"/> </storeUsage> <tempUsage> <tempUsage limit="100 mb"/> </tempUsage> </systemUsage> </systemUsage>
<!-- Οι υποδοχές μεταφοράς εκθέτουν το ActiveMQ μέσω ενός δεδομένου πρωτοκόλλου σε πελάτες και άλλους μεσίτες. Για περισσότερες πληροφορίες, βλέπε:
http://activemq.apache.org/configuring-transports.html --> <transportConnectors> <!-- Προστασία DOS, περιορίστε τις ταυτόχρονες συνδέσεις σε 1000 και το μέγεθος καρέ στα 100MB --> <transportConnector name="openwire" uri="tcp://0.0.0.0:61616?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/> <transportConnector name="amqp" uri="amqp://0.0.0.0:5672?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/> <transportConnector name="stomp" uri="stomp://0.0.0.0:61613?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/> <transportConnector name="mqtt" uri="mqtt://0.0.0.0:1883?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/> <transportConnector name="ws" uri="ws://0.0.0.0:61614?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/> </transportConnectors>
<!-- καταστρέψουν το πλαίσιο της άνοιξης κατά το κλείσιμο για να σταματήσουν την προβλήτα --> <shutdownHooks> <bean xmlns="http://www.springframework.org/schema/beans" class="org.apache.activemq.hooks.SpringContextHook" /> </shutdownHooks>
</broker>
<!-- Ενεργοποίηση κονσολών ιστού, API και επιδείξεων REST και Ajax Οι κονσόλες ιστού απαιτούν από προεπιλογή σύνδεση, μπορείτε να το απενεργοποιήσετε στο αρχείο jetty.xml
Ρίξτε μια ματιά στο ${ACTIVEMQ_HOME}/conf/jetty.xml για περισσότερες λεπτομέρειες --> <import resource="jetty.xml"/>
</beans> <!-- END SNIPPET: παράδειγμα -->
διαπιστευτήρια.ιδιότητες:
## --------------------------------------------------------------------------- ## Με άδεια χρήσης στο Apache Software Foundation (ASF) κάτω από ένα ή περισσότερα ## Συμφωνίες άδειας χρήσης συντελεστών. Δείτε το αρχείο NOTICE που διανεμήθηκε με ## αυτό το έργο για πρόσθετες πληροφορίες σχετικά με την ιδιοκτησία πνευματικών δικαιωμάτων. ## Το ASF σας αδειοδοτεί αυτό το αρχείο με την άδεια Apache, Έκδοση 2.0 ## (η "Άδεια"); Δεν μπορείτε να χρησιμοποιήσετε αυτό το αρχείο παρά μόνο σε συμμόρφωση με ## η Άδεια. Μπορείτε να λάβετε αντίγραφο της Άδειας στη διεύθυνση ## ## http://www.apache.org/licenses/LICENSE-2.0 ## ## Εκτός εάν απαιτείται από την ισχύουσα νομοθεσία ή συμφωνηθεί εγγράφως, το λογισμικό ## που διανέμεται βάσει της Άδειας διανέμεται σε βάση "ΩΣ ΕΧΕΙ", ## ΧΩΡΙΣ ΕΓΓΥΗΣΕΙΣ Ή ΠΡΟΫΠΟΘΕΣΕΙΣ ΟΠΟΙΟΥΔΗΠΟΤΕ ΕΙΔΟΥΣ, ρητές ή σιωπηρές. ## Δείτε την Άδεια για τη συγκεκριμένη γλώσσα που διέπει τα δικαιώματα και ## περιορισμοί βάσει της Άδειας. ## ---------------------------------------------------------------------------
# Καθορίζει τα διαπιστευτήρια που θα χρησιμοποιηθούν από στοιχεία (όπως η κονσόλα ιστού) για πρόσβαση στον μεσίτη
activemq.username=*** activemq.password=***
ανά.όνομα χρήστη=*** ανά.password=***
mper.username=*** mper.password=***
com.username=*** com.password=***
mcom.username=*** mcom.password=***
erp.username=*** erp.password=***
recr.username=*** recr.password=***
Η παραπάνω διαμόρφωση διαπίστωσε ότι υπήρχε μια ανωμαλία στην παρακολούθηση της ουράς σήμερα και τελικά διαπίστωσε ότι το πρόβλημα εμφανίστηκε εδώ:
Δεδομένου ότι ο λογαριασμός που χρησιμοποιείται στην παρακολούθηση της ουράς, ο διαχειριστής του έργου είναι system/manager(webapps\admin\WEB-INF\webconsole-embedded.xml
admins, η οποία απαιτεί δικαιώματα
|