2016-12-16 94 views
1

在我的一個wso2環境中,我有一個消息採樣處理器的問題,它不時從隊列中收集消息。爲什麼消息採樣處理器停止探測消息?

我們有大約60個消息處理器,並且經常在環境重啓或部署之後,其中一些只是停止,幾分鐘後有時會重新開始工作,有時幾小時。在wso2carbon.log中沒有錯誤。有關這些處理器的最後日誌是他們已經開始:(

我想這可能是與某種在這個環境中的資源限制的,因爲它隻影響一個環境。

這裏有一個對於消息處理器的示例代碼和它的消息存儲。

<?xml version="1.0" encoding="UTF-8"?> 
<messageProcessor 
    class="org.apache.synapse.message.processor.impl.sampler.SamplingProcessor" 
    messageStore="ms_notifyOfDocumentChangeOut_getDocument" 
    name="mp_notifyOfDocumentChangeOut_getDocument" xmlns="http://ws.apache.org/ns/synapse"> 
    <parameter name="max.delivery.drop">Disabled</parameter> 
    <parameter name="max.delivery.attempts">4</parameter> 
    <parameter name="client.retry.interval">0</parameter> 
    <parameter name="interval">5000</parameter> 
    <parameter name="sequence">s_notifyOfDocumentChangeOut_queue_getDocument</parameter> 
    <parameter name="concurrency">1</parameter> 
    <parameter name="is.active">true</parameter> 
</messageProcessor> 

<?xml version="1.0" encoding="UTF-8"?> 
<messageStore class="org.apache.synapse.message.store.impl.jms.JmsStore" 
    name="ms_notifyOfDocumentChangeOut_getDocument" xmlns="http://ws.apache.org/ns/synapse"> 
    <parameter name="store.producer.guaranteed.delivery.enable">false</parameter> 
    <parameter name="java.naming.factory.initial">org.wso2.andes.jndi.PropertiesFileInitialContextFactory</parameter> 
    <parameter name="store.failover.message.store.name">ms_notifyOfDocumentChangeOut_getDocument</parameter> 
    <parameter name="store.jms.cache.connection">false</parameter> 
    <parameter name="java.naming.provider.url">repository/conf/jndi.properties</parameter> 
    <parameter name="store.jms.JMSSpecVersion">1.1</parameter> 
    <parameter name="store.jms.destination">ms_notifyOfDocumentChangeOut_getDocument</parameter> 
</messageStore> 

哪些資源需要它才能正常工作任何想法? 我懷疑最大線程,但..

執行cat/proc /秒YS /內核/線程-MAX

+1

你爲jms部分配置了lst_t_core,lst_t_max嗎? –

+0

你能指點我配置文件的位置嗎? – poison64

+0

wso2esb-4.9.0 \ repository \ conf \ nhttp.properties?消息處理器中是否使用了nhttp? – poison64

回答

0

配置lst_t_core,lst_t_max在jms.properties工作。謝謝Jean-Michel :)