Google App Engine - 每个JVM实例是否只使用一个线程?

时间:2010-02-10 20:27:21

标签: google-app-engine

每个JVM实例只使用一个线程吗?

例如。如果用户向一个需要5秒的JVM实例发出请求,然后2秒后另一个用户向同一个JVM实例发出请求,那么第二个用户是否必须等待剩余的3秒才会开始处理它们的请求?

3 个答案:

答案 0 :(得分:2)

目前,JVM是单线程的,但你不应该依赖于这种情况:Java Servlet规范允许Servlet容器是多线程的。

就您的示例而言,不,第二个用户不必等待:App Engine会旋转多个独立的虚拟机来为您的应用提供服务,因此第二个请求将转到另一个虚拟机。

答案 1 :(得分:0)

我不这么认为。如果它像任何其他应用程序服务器一样工作,则每个请求都在不同的线程上。

答案 2 :(得分:0)

每个实例可以有多个线程。我找不到对这样说的链接的引用,但如果每个JVM都是单线程的,我认为由于新JVM启动的延迟,我们会看到更多的请求感觉很慢。