summaryrefslogtreecommitdiffstats
path: root/configserver/src
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2017-12-07 15:58:04 +0100
committerHenning Baldersheim <balder@yahoo-inc.com>2017-12-07 15:58:04 +0100
commit24ec352f4288afd36a6da2e8577221e0fdccda84 (patch)
tree4a23d11048f5035dcaa9db8c7a1c1fb7a8c93e63 /configserver/src
parentb9b0b7d153cde0f6d023d849c8ffdcefb533a277 (diff)
Use different threadsPools for push and pull.
Diffstat (limited to 'configserver/src')
-rw-r--r--configserver/src/main/java/com/yahoo/vespa/config/server/filedistribution/FileServer.java10
1 files changed, 6 insertions, 4 deletions
diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/filedistribution/FileServer.java b/configserver/src/main/java/com/yahoo/vespa/config/server/filedistribution/FileServer.java
index 90792759d2c..a8a6b4d6776 100644
--- a/configserver/src/main/java/com/yahoo/vespa/config/server/filedistribution/FileServer.java
+++ b/configserver/src/main/java/com/yahoo/vespa/config/server/filedistribution/FileServer.java
@@ -33,7 +33,8 @@ public class FileServer {
private static final Logger log = Logger.getLogger(FileServer.class.getName());
private final FileDirectory root;
- private final ExecutorService executor;
+ private final ExecutorService pushExecutor;
+ private final ExecutorService pullExecutor;
private final FileDownloader downloader;
private enum FileApiErrorCodes {
@@ -78,7 +79,8 @@ public class FileServer {
private FileServer(ConnectionPool connectionPool, File rootDir) {
this.downloader = new FileDownloader(connectionPool);
this.root = new FileDirectory(rootDir);
- this.executor = Executors.newFixedThreadPool(Runtime.getRuntime().availableProcessors());
+ this.pushExecutor = Executors.newFixedThreadPool(Runtime.getRuntime().availableProcessors());
+ this.pullExecutor = Executors.newFixedThreadPool(Runtime.getRuntime().availableProcessors());
}
public boolean hasFile(String fileName) {
@@ -97,7 +99,7 @@ public class FileServer {
File file = root.getFile(reference);
if (file.exists()) {
- executor.execute(() -> serveFile(reference, target));
+ pushExecutor.execute(() -> serveFile(reference, target));
}
return false;
}
@@ -139,7 +141,7 @@ public class FileServer {
return new FileReferenceData(reference, file.getName(), type, blob);
}
public void serveFile(Request request, Receiver receiver) {
- executor.execute(() -> serveFile(request.parameters().get(0).asString(), request, receiver));
+ pullExecutor.execute(() -> serveFile(request.parameters().get(0).asString(), request, receiver));
}
private void serveFile(String fileReference, Request request, Receiver receiver) {
FileApiErrorCodes result;