在本地模式下,apache spark出现了一个非常奇怪的问题。该应用程序是一个带有几个调度程序的spring boot应用程序,该调度程序触发apache spark进程来解析和加入1-2 GB的文件。当我在Windows系统中运行该应用程序时,一切都将顺利运行。但是在linux中,应用程序始终占用150%以上的CPU,并且该应用程序突然停止运行而没有给出任何错误。
是否可以将APP配置为使用少于80%的CPU。这是我的配置。
@Bean
public SparkConf sparkConf() {
return new SparkConf()
.setAppName(appName)
.setMaster(masterUri);
}
@Bean
public JavaSparkContext javaSparkContext() {
return new JavaSparkContext(sparkConf());
}
@Bean
public SparkSession sparkSession() {
return SparkSession
.builder()
.sparkContext(javaSparkContext().sc())
.appName(appName)
.master("local[*]")
.getOrCreate();
}