上一篇文章說了ES的源碼編譯以及如何在本地編譯。這一篇文章主要說明ES的啓動過程。
環境準備
說明:本文章使用的ES版本是:6.7.0
啓動函數:org.elasticsearch.bootstrap.ElasticSearch
設置如下斷點:
啓動在上一篇文章中介紹的Debug模式中的一種,這裏我用的遠程Debug模式。
ElasticSearch的啓動過程
跟着Debug流程走一遍,可以看出ES啓動流程大概分爲以下幾個階段:
- org.elasticsearch.bootstrap.Elasticsearch#main(java.lang.String[]) 解析命令參數,加載配置,權限驗證
- org.elasticsearch.bootstrap.Bootstrap 初始化,資源檢查