我必须迭代130多个数据传输对象,并且每次都会生成一个json以上传到AWS S3。
如果不进行任何改进,则整个过程大约需要90秒。我尝试使用lamba而不是lamba,两者的结果相同。
for(AbstractDTO dto: dtos) {
try {
processDTO(dealerCode, yearPeriod, monthPeriod, dto);
} catch (FileAlreadyExistsInS3Exception e) {
failedToUploadDTOs.add(e.getLocalizedMessage() + ": " + dto.fileName() + ".json");
}
}
Run Code Online (Sandbox Code Playgroud)
dtos.stream().forEach(dto -> {
try {
processDTO(dealerCode, yearPeriod, monthPeriod, dto);
} catch (FileAlreadyExistsInS3Exception e) {
failedToUploadDTOs.add(e.getLocalizedMessage() + ": " + dto.fileName() + ".json");
}
});
Run Code Online (Sandbox Code Playgroud)
经过一番调查,我得出结论,processDTO方法运行每项大约需要0.650ms。
我的第一个尝试是使用并行流,结果非常好,大约需要15秒才能完成整个过程:
dtos.parallelStream().forEach(dto -> {
try {
processDTO(dealerCode, yearPeriod, monthPeriod, dto);
} catch (FileAlreadyExistsInS3Exception e) {
failedToUploadDTOs.add(e.getLocalizedMessage() + ": " …
Run Code Online (Sandbox Code Playgroud) 我正在尝试启动一个 kubernetes 集群,但使用不同的 url 让 kubernetes 提取其图像。AFAIK,这只能通过配置文件来实现。
我对配置文件不熟悉,所以我从一个简单的开始:
apiVersion: kubeadm.k8s.io/v1alpha2
imageRepository: my.internal.repo:8082
kind: MasterConfiguration
kubernetesVersion: v1.11.3
Run Code Online (Sandbox Code Playgroud)
并运行命令kubeadm init --config file.yaml 一段时间后,它失败并出现以下错误:
[init] using Kubernetes version: v1.11.3
[preflight] running pre-flight checks
I1015 12:05:54.066140 27275 kernel_validator.go:81] Validating kernel version
I1015 12:05:54.066324 27275 kernel_validator.go:96] Validating kernel config
[WARNING Hostname]: hostname "kube-master-0" could not be reached
[WARNING Hostname]: hostname "kube-master-0" lookup kube-master-0 on 10.11.12.246:53: no such host
[preflight/images] Pulling images required for setting up a Kubernetes cluster
[preflight/images] This might take …
Run Code Online (Sandbox Code Playgroud)