S3-ClusterModule

 

这个模块主要将集群的默认配置加上(registerBuiltinClusterSettingsregisterBuiltinIndexSettings),以及绑定一些集群服务(ClusterInfoService, DiscoveryNodeService, MetaDataCreateIndexService, RoutingService等)。

builtin cluster settings

builtin index settings

最后通过interface的configure将以上2个settings的实例(DynamicSettings.class)绑定/注入到ClusterModule.class上。

bind setting and service

asEagerSingleton作为一种热加载(相较于lazy initialization)。

其中MetaDataCreateIndexService里面就包括了index相关的metadata settings,比如mapping, alias, shards, replicas等。

create index metadata


Guice

在ClusterModule的configure()中,通过bind()将接口实现类关联起来。


Reference