问题描述
我正在node.js中开发一个大型应用程序,每天大约需要5000个用户才能上传excel文件。文件上传后,应用程序需要评估该文件,并经过一些数据库验证,然后处理这些文件...。我能够使用multer上传和处理单个文件,但是当多个用户上传时,系统陷入僵局...我正在使用sql Server数据库。有什么解决方案可以解决这种情况。
谢谢。
解决方法
您需要一次处理一次这些传入文件(或两个或某个受控数量)。而且,您不想从为您的Web应用程序提供服务的同一nodejs / javascript实例内部进行处理。即使可以防止死锁,事情也会陷入困境。
这是我成功解决此问题的方法。
获取Web服务器(缓存器)以将传入的上传内容写入特定位置的文件。用标识它们的名称来命名它们。例如,您的姓名可以采用这种形式
/var/myapp/incoming/2020-10-01T19-32-20U98765
这是用户98765
在特定时间上传的文件。
编写一个独立的程序以查看incoming
目录,从中选择一个文件,处理该文件,然后将其移动到processed
目录中。