发布于 2016-06-24 16:05:37
服务器上的请求处理默认为同步处理模式。
每个请求都在一个单独的线程上处理。请求被认为是同步的,因为该请求会阻塞线程,直到请求完成处理为止。
它已经是多线程的了。
是的,服务器(容器)是多线程的.对于传入的每个请求,将从线程池中提取一个线程,并将请求绑定到特定的请求。
在已知资源方法执行需要很长时间来计算结果的情况下,应该使用服务器端异步处理模型。
是的,这样我们就不会阻塞容器线程了。容器线程池中只有那么多线程来处理请求。如果我们用长时间的处理请求将它们全部搁置起来,那么容器可能会耗尽线程,从而阻止其他请求的传入。在异步处理中,泽西将线程返回到容器,并在自己的线程池中处理请求处理本身,直到进程完成为止,然后将响应发送到容器,在容器中它可以将其发送回客户端。
如果客户端不需要按特定顺序服务请求,那么谁也不关心操作的“成本”。
不太确定客户和这里的任何事有什么关系。或者至少在你问这个问题的背景下。抱歉的。
难道不是所有的操作都是异步的吗?
不一定,如果所有的请求都是快速的。虽然你可以为它提出一个论据,但这需要性能测试,以及你可以互相对抗并做出决定的数字。每个系统都是不同的。
https://stackoverflow.com/questions/38016912
复制相似问题