【问题标题】:spring boot startup failure if mongo host not reachable如果 mongo 主机无法访问,spring boot 启动失败
【发布时间】:2019-07-04 13:40:24
【问题描述】:

我有 Spring boot mongo db 应用程序,当我开始运行此应用程序时,如果 mongo 主机还活着,我能够看到我的应用程序已启动并成功运行, 如果我启动我的应用程序时我的 mongo 主机关闭,我的应用程序无法启动。 如果 mongo 主机关闭,有什么办法可以让我的应用程序启动并运行。

有人可以帮我解决这个问题吗?

我在我的应用程序中使用 spring boot mongo 属性

spring.data.mongodb.repositories.enabled=true

spring.data.mongodb.port=27017

spring.data.mongodb.database=db

spring.data.mongodb.uri=mongodb://mongo-node-1.ballu/db

spring boot kafka 也有同样的问题。

【问题讨论】:

  • 使用这个排除spring boot来自动配置mongodb @SpringBootApplication(exclude = {MongoAutoConfiguration.class, MongoDataAutoConfiguration.class})

标签: spring mongodb spring-boot kafka-consumer-api


【解决方案1】:

抱歉之前的评论。无论如何,这是为了排除自动配置bean

即使 mongo 主机关闭了我的应用程序,有什么办法吗 应该已启动并运行。

是的, spring.datasource.continue-on-error=true #Whether to stop if an error occurs while initializing the database.

根据春天doc

默认情况下,Spring Boot 启用 Spring 的 fail-fast 功能 JDBC 初始化程序。这意味着,如果脚本导致异常, 应用程序无法启动。您可以通过设置调整该行为 spring.datasource.continue-on-error。

从春季卡夫卡开始尝试这个(我不确定这是否符合您的要求)

spring.kafka.admin.fail-fast=true # Whether to fail fast if the broker is not available on startup.

【讨论】:

    猜你喜欢
    • 2015-03-28
    • 2018-09-05
    • 1970-01-01
    • 2018-06-30
    • 2023-04-04
    • 1970-01-01
    • 2020-04-03
    • 2018-10-25
    • 2015-05-09
    相关资源
    最近更新 更多