我有一个我正在尝试配置的MultiModule gradle项目.
Root
projA
projB
other
projC
projD
projE
...
Run Code Online (Sandbox Code Playgroud)
我希望能够做的是在root build.gradle中有一个任务,它将在另一个目录中的每个项目中执行buildJar任务.
我知道我能做到
configure(subprojects.findAll {it.name != 'tropicalFish'}) {
task hello << { task -> println "$task.project.name"}
}
Run Code Online (Sandbox Code Playgroud)
但这也会得到projA和projB,我只想在c,d,e上执行任务...请让我知道实现这一目标的最佳方法.
我想使用前置过滤器来添加尾部斜杠以及前置过滤器来处理某些端点上的身份验证.
这是我的路由代码:
// Add filter to all requests which adds a trailing slash if it is missing //
before("*", Filters.addTrailingSlashes);
path("/api", () -> {
// Authentication Intercept //
before("/*", AuthenticationIntercept.authenticationIntercept);
// Sampling Endpoints //
get(Path.Web.SAMPLES_FETCH_LATEST, SamplingController.fetchLatestSamples, new JsonTransformer());
get(Path.Web.SAMPLES_FETCH_FOR_DEVICE, SamplingController.getLatestSamplesForDevice, new JsonTransformer());
});
Run Code Online (Sandbox Code Playgroud)
然后我点击以下端点:
本地主机:4567/API /样品/ 10
会发生什么是首先调用addTrailingSlashes.然后调用身份验证过滤器,然后再次调用addTrailingSlashes,localhost:4567/api/samples/10 /作为请求端点,最后再次调用身份验证过滤器.
这是预期的行为吗?我想要发生的是,addTrailingSlashes一旦添加斜杠就被调用,然后转发请求一次,以便只调用一次身份验证过滤器.
任何想法都将非常感激.
谢谢,内森
我一直试图获得一个火花工作,现在运行完成几天,我终于能够完成它但仍然有大量失败的任务,其中执行者被杀死的信息如下:
ExecutorLostFailure(执行程序77退出由其中一个正在运行的任务引起)原因:容器被YARN杀死超过内存限制.使用45.1 GB的44.9 GB物理内存.考虑提升spark.yarn.executor.memoryOverhead
这些是我传递给集群的属性:
[
{
"classification": "spark-defaults",
"properties": {
"spark.executor.memory": "41000m",
"spark.driver.memory": "8000m",
"spark.executor.cores": "6",
"spark.shuffle.service.enabled": "true",
"spark.executor.instances": "98",
"spark.yarn.executor.memoryOverhead": "5000"
}
}
]
Run Code Online (Sandbox Code Playgroud)
该集群包括20台机器,每台机器有32个内核和240G内存.我是否应该继续提高memoryOverhead,或者是否表明存在更深层次的问题.在将结果数据写入S3之前,此时的错误似乎发生在从5000个分区合并到500个分区期间.我猜测coalesce导致了一个shuffle,因为集群的内存已经很低,所以它推得太远了.
工作流程如下:
使用下面的combineByKey,实质上是通过键将单个对象合并到对象数组中
combineByKey(新函数,添加函数,合并函数,新HashPartitioner(5000),false,null);
更多地图
另一个问题是如何导出上面的44.9数字.我认为最大内存将是执行程序内存+ memoryOverhead,这将是46G而不是44.9G.
Nathan,非常感谢任何帮助
apache-spark ×1
build.gradle ×1
coalesce ×1
gradle ×1
hadoop-yarn ×1
java ×1
multi-module ×1
rest ×1