【问题标题】:Wildfly suddenly return 404 for deployed EARWildfly 突然为部署的 EAR 返回 404
【发布时间】:2018-08-08 02:31:23
【问题描述】:

在 Wildfly 10 上成功部署 EAR 并在几天后正常工作后,它为已部署 EAR 的 URL 返回 404(服务器未关闭),只有我在 server.log 文件中有此警告

WARN  [org.apache.activemq.artemis.core.server] (Thread-25 (ActiveMQ-server-
org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl$2@43653a52-
915383569)) AMQ222010: Critical IO Error, shutting down the server. 
file=NIOSequentialFile
/home/wildfly/wildfly/standalone/data/activemq/largemessages/2317811.msg, 
message=/home/wildfly/wildfly/standalone/data/activemq/largemessages 
/2317811.msg (Too many open files): 
ActiveMQIOErrorException[errorType=IO_ERROR 

我使用 JMS 进行应用程序审计

【问题讨论】:

    标签: jms wildfly-10 activemq-artemis


    【解决方案1】:

    当 ActiveMQ Artemis 遇到严重的 IO 错误时,它会自行关闭以防止损害数据完整性。在您的情况下,代理似乎超出了操作系统强制执行的打开文件的限制。

    【讨论】:

    • 但是为什么会发生这种情况以及我该如何预防呢? (我们之前增加了打开文件的限制)
    • 看起来您正在发送代理解释为“大”消息的内容,这些消息作为单个文件存储在磁盘上。换句话说,1 条消息产生 1 个文件。因此,您可以发送较小的消息以便它们不会被视为“大”,或者您可以增加客户端的 minLargeMes​​sageSize,或者您可以增加操作系统的文件限制。
    • 首先非常感谢贾斯汀,但我也想知道为什么在消息被消费后打开的消息文件没有关闭?发送者/消费者类或配置中是否有任何问题?
    • 是否有直接证据表明消息消费后文件没有关闭?
    • 我在消费者处理程序结束后添加了日志,我也有消费者池,所以我认为当消费者返回池以提供其他消息时,Wildfly/ActiveMQ 将关闭文件,我也会关闭发送方连接发送结束。
    猜你喜欢
    • 1970-01-01
    • 2016-06-02
    • 2018-08-18
    • 1970-01-01
    • 2018-07-26
    • 2016-12-04
    • 2018-11-25
    • 2017-03-25
    • 2015-11-06
    相关资源
    最近更新 更多