1
有沒有一種方法來監聽Spark框架何時關閉,以運行一些清理?例如,我想關閉我的ElasticSearch客戶端。Spark框架:聽服務器停止
有沒有一種方法來監聽Spark框架何時關閉,以運行一些清理?例如,我想關閉我的ElasticSearch客戶端。Spark框架:聽服務器停止
一種方法是使用Runtime.getRuntime().addShutdownHook()
。
這是用於在程序退出時運行代碼的通用Java機制。由於Spark Framework Web應用程序只是一個普通的Web應用程序,因此這將起作用。見the Java documentation。
但是,如果使用Unix上的SIGKILL信號或Microsoft Windows上的TerminateProcess調用終止VM進程,該鉤子將不會運行。請注意,這適用於在大多數IDE中按下「停止」按鈕。