我有几个问题。据我所知,对容器的每个请求都会变成HttpServletRequest
. 更多请求-> 更多实例HttpServletRequest
。然后,当请求对象调用名为“abc”的 servlet 时,会创建一个“abc”servlet 实例。假设同时有 3 个请求来到 'abc' servlet,那么
(1)我想知道,这是否意味着每个请求都会创建 3 个 'abc' servlet 实例?或者请求排队,直到对 servlet 的一个请求完成。
然后让我们说,3 请求“abc”servlet 执行一些数据库进程,这些进程可能同时是插入和检索。那么
(2)一个请求是否应该在队列中,直到其他请求的servelt完成任务(同步)或所有servlet作为多线程作为单独的任务(非同步)完成他们的数据库任务?
(3)。如果它们以不同步的方式工作,我们如何使这些任务同步(比如说,只有一个特定的任务——将一些东西保存到数据库)并排队?为此,最好是实现 servletSingleThreadModel
还是使用根据单例模式创建的类中的方法?那么它对容器的性能有何影响呢?
简而言之,我们如何为所有请求同步运行特定任务?
我也读过这个。那篇文章谈到了 servlet。假设一个 servlet 的任务被移交给另一个类,那么我想知道在这个上使用单例模式怎么样?