Spark 嵌入式 Jetty 中的并发性 java

Concurrency inside embedded Jetty of Spark java

我们有一个受 Spark 框架支持的简单 Java REST API。

我们已经通过从应用程序的 Java 主方法调用的以下块初始化线程,如 http://sparkjava.com/documentation#embedded-web-server 中所示:

int maxThreads = 8;
int minThreads = 2;
int timeOutMillis = 30000;
threadPool(maxThreads, minThreads, timeOutMillis);

但是,我们已经对并发请求进行了一些模拟,结果是创建了线程但排队以顺序发出 HTTP 请求,尽管我们认为这些请求将是并发的。

这正常吗? Spark 框架通常的行为是避免服务器处理配置数量的线程,而是让它们在队列中等待以有效地执行 HTTP 请求吗?

我一直在研究这个,我现在知道的是,这是专门针对像 Spark Java 这样的微型 Web 框架进行处理的常用方法。

背后的原因是调节服务器中的流量以避免节流。