簡體   English   中英

使用 Spring 引導配置 Apache Ignite

[英]Configuring Apache Ignite with Spring Boot

我正在使用ignite-spring-boot-autoconfigure-ext官方 Ignite 庫與我的 Spring 引導應用程序集成。 我以這個例子為基礎: https://ignite.apache.org/docs/latest/extensions-and-integrations/spring/spring-boot#set-ignite-up-via-spring-boot-configuration這個例子似乎非常簡單,但它只顯示了 Ignite 配置選項的一小部分。 我嘗試配置一個 IP finder 以及一個具有驅逐策略的近緩存,但沒有任何成功。 更糟糕的是,錯誤的配置通常會被忽略。

是否有更完整的示例說明如何使用此配置,或者它根本不支持更高級的配置選項?

application.yml 只是一個屬性文件,它不是上下文配置文件。

application.yml 幫助您設置(覆蓋)屬性。 在上面的示例中,它覆蓋了位於“ignite”下的IgniteConfiguration class 的屬性。 在您的 application.yml 文件中..

IP finder 是 tcpDiscoverySpi 的一部分,它是抽象接口,因此沒有屬性的 setter 或 getter 可以從 yml 文件中覆蓋它們。

您仍然可以使用 XML Spring 上下文配置或使用 @ConfigurationProperties 和 @Value 注釋以編程方式配置 Ignite 實例:

應用程序.yml:

ignite-ext:
  vm-ip-finder:
    addresses:
      - 192.168.0.1:47500
      - 192.168.0.1:47501
      - 192.168.0.1:47502

用法:

@SpringBootApplication
public class AutoConfigureExample {
    @Bean
    @ConfigurationProperties(prefix = "ignite-ext.vm-ip-finder")
    public TcpDiscoveryVmIpFinder tcpDiscoveryVmIpFinder() {
        return new TcpDiscoveryVmIpFinder();
    }
}

@Bean
public CommandLineRunner runner() {
    @Autowired
    TcpDiscoveryVmIpFinder tcpDiscoveryVmIpFinder;
    return new CommandLineRunner() {
        ....
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM