ホームページ  >  記事  >  ウェブフロントエンド  >  Spark カーネル Reveal-08-Spark の Web 監視 page_html/css_WEB-ITnose

Spark カーネル Reveal-08-Spark の Web 監視 page_html/css_WEB-ITnose

WBOY
WBOYオリジナル
2016-06-24 11:50:291140ブラウズ

SparkContext で初期化 UI コードを確認できます:

// Initialize the Spark UI<strong>private</strong>[spark] <strong>val </strong>ui: Option[SparkUI] =  <strong>if </strong>(conf.getBoolean("spark.ui.enabled", <strong>true</strong>)) {    Some(SparkUI.createLiveUI(<strong>this</strong>, conf, listenerBus, jobProgressListener,      env.securityManager,appName))  } <strong>else </strong>{    // For tests, do not enable the UI    None  }// Bind the UI before starting the task scheduler to communicate// the bound port to the cluster manager properlyui.foreach(_.bind())
SparkUI オブジェクトを作成します:
<strong>def </strong>createLiveUI(    sc: SparkContext,    conf: SparkConf,    listenerBus: SparkListenerBus,    jobProgressListener: JobProgressListener,    securityManager: SecurityManager,    appName: String): SparkUI =  {  create(Some(sc), conf, listenerBus, securityManager, appName,    jobProgressListener = Some(jobProgressListener))}

create メソッドを入力します:


SparkUI を入力します:


Spark UI は WebUI を継承します:


WebUI クラスは defInitialize() メソッドを定義します


SparkUI のInitialize() 実装メソッド:


上記のコードの分析: ページへのタブ ページの追加

1.


2、ステージタブ:


3、ストレージタブ:


4、環境タブ:


5、エグゼキュータータブ:


6. createStaticHandler:


7. createRedirectHandler:


initialize() メソッドの実行後、SparkContext の Spark UI の初期化に戻ります:


bind port:


上記のコードからわかるように、ローカル ポート番号4040 が開始されます JettyServer



上記のコードの分析:

1. ContextHandlerCollection を作成し、ハンドラーを ContextHandlerCollection に設定します:

2.


3. Jetty サーバーを作成してポート番号をバインドし、QueuedThreadPool を作成してサーバーに設定します。

4. Jetty サーバーを起動すると、例外がスローされます。

5.起動に失敗した場合は、startServiceOnPort の開始を数回再試行します。 ,会ハンドル情報东西存放ServerInfo中:


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。