Hazelcast
如果 classpath 上存在 Hazelcast 且找到合适的配置,Spring Boot 会自动配置一个 HazelcastInstance
,你可以在应用中注入使用。
Spring Boot 首先尝试通过以下配置选项创建客户端:
-
存在
ClientConfig
bean。 -
通过
spring.hazelcast.config
属性定义的配置文件。 -
存在
hazelcast.client.config
系统属性。 -
工作目录或 classpath 根目录下的
hazelcast-client.xml
。 -
工作目录或 classpath 根目录下的
hazelcast-client.yaml
(或hazelcast-client.yml
)。
如果无法创建客户端,Spring Boot 会尝试配置嵌入式服务端。
如果你定义了 Config
bean,Spring Boot 会使用它。
如果你的配置定义了实例名,Spring Boot 会尝试定位已有实例,而不是新建。
你也可以通过如下配置指定 Hazelcast 配置文件:
-
Properties
-
YAML
spring.hazelcast.config=classpath:config/my-hazelcast.xml
spring:
hazelcast:
config: "classpath:config/my-hazelcast.xml"
否则,Spring Boot 会尝试从默认位置查找 Hazelcast 配置:工作目录或 classpath 根目录下的 hazelcast.xml
,或同位置的 YAML 文件。同时也会检查是否设置了 hazelcast.config
系统属性。更多细节请参阅 Hazelcast 文档。
默认支持 Hazelcast 组件上的 @SpringAware 。可通过声明 HazelcastConfigCustomizer bean 并设置 @Order 大于零,覆盖 ManagedContext 。
|
Spring Boot 还对 Hazelcast 提供了 显式缓存支持。如果启用了缓存,HazelcastInstance 会自动包装为 CacheManager 实现。
|