关于 synchronizeOnSession

news/2024/5/19 15:37:30
本文为[原创]文章,转载请标明出处。
原文链接:https://weyunx.com/2019/01/22...
原文出自微云的技术博客

最近在维护一个老项目,发现了一个问题。我们新增了一个耗时较久的复杂查询的功能,页面采用了 ajax 异步请求数据,但是请求未返回之前,点击页面其他功能都只能打开空白页,必须等待之前的数据返回后才能开始加载,整个过程是串行等待,调试过程中发现服务器仅分配了一个线程给该用户。故查看了一下原始代码,发现 web.xml 中配置了如下参数:

<init-param><param-name>synchronizeOnSession</param-name><param-value>true</param-value>
</init-param>

看了一下 spring mvc 的说明文档,仅找到一处说明:

Enforces the presence of a session. As a consequence, such an argument is never null. Note that session access is not thread-safe. Consider setting the RequestMappingHandlerAdapter instance’s synchronizeOnSession flag to true if multiple requests are allowed to concurrently access a session.

因为 session 是非线程安全的,如果需要保证用户能够在多次请求中正确的访问同一个 session ,就要将 synchronizeOnSession 设置为 TRUE

所以此处把synchronizeOnSession 改为 false 后,问题随之解决,调试中可以看到服务器为用户分配了多个线程。

同时也可以参考这个例子

参考资料
  • docs.spring.io

http://lihuaxi.xjx100.cn/news/244475.html

相关文章

点击按钮下载文件

RequestMapping("/download.do")public void download(HttpServletRequest request,HttpServletResponse response)throws Exception {String filePath "文件路径";FileInputStream fis null;OutputStream os null;try {fis new FileInputStream(fileP…

插入排序,希尔排序,堆排序

本文将介绍三种排序算法--插入排序&#xff0c;希尔排序&#xff0c;堆排序。本文所有例子都是使用升序一.插入排序算法思想维护一个有序数组&#xff0c;将要插入的数据与有序数组自最后一个元素直到合适位置的数一一比较。eg: 有序数组&#xff1a;1&#xff0c;3&#xff0c…

简易在线实验室管理系统

个人资源与分享网站&#xff1a;http://xiaocaoshare.com/ 1.java&#xff0c;SSM&#xff0c;jsp&#xff0c;mysql 2.

C++回声服务器_5-多进程版本

服务器和客户端都是用多进程来接收和发送数据。 服务器代码 #include <cstdio> #include <cstdlib> #include <cstring> #include <unistd.h> #include <csignal> #include <sys/wait.h> #include <arpa/inet.h> #include <sys/s…

一文读懂卷积神经网络

自今年七月份以来&#xff0c;一直在实验室负责卷积神经网络&#xff08;Convolutional Neural Network&#xff0c;CNN&#xff09;&#xff0c;期间配置和使用过theano和cuda-convnet、cuda-convnet2。为了增进CNN的理解和使用&#xff0c;特写此博文&#xff0c;以其与人交流…

博客5:文件,目录以及用户的权限管理

linux用户与组的相关内容简介&#xff1a; 1.Linux用户&#xff1a;Username/UID管理员&#xff1a;root&#xff0c;0普通用户&#xff1a;1-65535系统用户&#xff1a;1-499&#xff08;在centos7上为1-999&#xff09;作用&#xff1a;对守护进程获取资源进行权限分配登录…

使用阿里云发布分布式网站,开发时候应该注意什么?

虽然之前写过关于负载均衡的文章&#xff0c;但是似乎大家都对负载均衡这个标题很陌生。今天就换个角度&#xff0c;从分布式网站发布角度说一下 首先&#xff0c;网站发布一定离不开服务器&#xff0c;就是阿里云的云服务器ECS。最近发现&#xff0c;老用户也有机会购买特价服…

简易在线健身房俱乐部管理系统

个人资源与分享网站&#xff1a;http://xiaocaoshare.com/ 1.开发语言&#xff1a;java&#xff0c;SSM&#xff0c;jsp&#xff0c;mysql&#xff0c;Tomact 2.