我正在使用 Spring MVC 框架开发一个 Web 应用程序。现在我想知道是否为每个客户端请求关闭了连接。我的意思是,如果我的网站有 1000 个用户登录,我会打开 1000 个连接吗?如果是这样,有没有办法让客户端和服务器进行通信,而无需在收到请求后创建连接或关闭它们?对于这个问题我很抱歉,但是我开始使用这个框架并且我在安装框架时没有设置任何与它相关的东西。
问问题
591 次
1 回答
2
Web 请求访问网络服务器,获取 HTML 和 CSS 文件和图片等资源,然后再次关闭连接。你不会有永久的联系。这意味着如果 1000 个用户同时加载一个站点,您将有 1000 个并发请求。如果他们在 5 分钟内在不同时间加载站点,您将不会有并发请求,或者至少一次更少。Web 请求通常在几到 300 毫秒内处理。这与打开永久数据库连接或类似的东西不同。登录也将通过 Web 请求进行处理,并在成功登录时创建会话。可以以不同的方式处理会话。您可以在此处阅读有关会话的更多信息:http ://en.wikipedia.org/wiki/Session_%28computer_science%29. 您还应该阅读有关 Spring Security 的信息。
因此,要回答您的问题,不,当 1000 个用户登录时,您不会有 1000 个打开的连接。但是每次用户加载页面时,您都会有一个连接。
您可以通过使用例如基于 Javascript 的前端来最小化与服务器的连接,该前端负责处理客户端的大部分任务,并且仅通过 REST 与服务器通信。
我希望这有助于并回答您的问题。
亲切的问候,克里斯
于 2013-03-22T00:18:27.923 回答