Java Spring MVC中的每用户级同步
我正在用SpringMVC设计一个上传功能。所有从客户端上传的内容都会到达一个端点,该端点负责处理ajax调用。映射到端点的控制器调用“@Service”类中的函数Java Spring MVC中的每用户级同步,java,spring,spring-mvc,Java,Spring,Spring Mvc,我正在用SpringMVC设计一个上传功能。所有从客户端上传的内容都会到达一个端点,该端点负责处理ajax调用。映射到端点的控制器调用“@Service”类中的函数 此函数通过将其上载到my cloud文件系统并修改会话变量来执行实际上载。问题是上传需要一段时间才能完成。因此,控制器返回的时间延长。我希望我的控制器立即返回,启动一个线程来处理上传,然后返回。如果来自同一客户机的多个上载同时调用端点,我想确保对会话变量的同步访问,如何做到这一点?Spring使用servlet技术,为servlet
此函数通过将其上载到my cloud文件系统并修改会话变量来执行实际上载。问题是上传需要一段时间才能完成。因此,控制器返回的时间延长。我希望我的控制器立即返回,启动一个线程来处理上传,然后返回。如果来自同一客户机的多个上载同时调用端点,我想确保对会话变量的同步访问,如何做到这一点?Spring使用servlet技术,为servlet上的每个请求创建不同的线程(不是不同的实例)因此,您真正想要完成的关于线程的任务已经完成。Spring使用servlet技术,为servlet上的每个请求创建不同的线程(而不是不同的实例),因此您真正想要完成的关于线程的任务已经完成。假设两个请求大致同时出现,它们都试图修改会话属性。这会导致一些同步问题吗?但是两个线程竞相修改共享会话属性数据,这是如何工作的?运行servlet的容器将处理此问题不确定文档,这取决于您的容器,您可以搜索容器如何在同一个servlet(例如tomcat)上处理不同的请求,您会发现许多有用的文章。如果两个请求大致同时出现,它们都会尝试修改会话属性。这会导致一些同步问题吗?但是两个线程竞相修改共享会话属性数据,这是如何工作的?运行servlet的容器将处理此问题不确定文档,这取决于您的容器,您可以搜索容器如何在同一个servlet(例如tomcat)上处理不同的请求,您将找到许多有用的文章