本文基于ES2.3.2来描述.通过结合源码梳理出ES实例的启动过程. elasticsearch的启动过程是根据配置和环境组装需要的模块并启动的过程.这一过程就是通过guice注入各个功能模块并启动这些模块,从而得到一个功能完整的node.正如之前所说elasticsearch的模块化特点,它的各个功能都是独立实现,然后实现通过guice对外提供.首先简单的说一下guice,它是google的一个轻量级依赖注入框架.它的作者也是依赖注入标准(JSR-330)制定者.虽然它是轻量级框架,但是它的功…