如何在node.js中处理多个conncurrency请求

时间:2013-06-23 16:39:51

标签: node.js request

我正在尝试同时上传多张图片。在服务器端我必须 创建一个唯一的文件夹以保留该图像。所以如何在一个请求完成之前发出等待请求并向客户端发送响应。我试过这个,但当我发送响应时,我收到此错误无法设置标题后发送它们。所以建议我很好的解决方案。我在等待你的回复。

当我上传五张图片时,在服务器端我必须检查文件夹是否已经存在。如果它不存在我必须为这五个图像创建新的文件夹然后我必须检查文件夹引用是否已经存在mongodb.if它不存在我必须在mongodb中存储该文件夹引用然后我必须向客户发送回复。但是,当我上传五张图片时,五个请求将转到服务器,因此请求在完成一个请求之前执行该条款,因此相同的文件夹引用正在存储,并且它还为五个图像创建了五个文件夹。

   function myMiddleware(req, res, next)
    {

          console.info("inside myMiddleware");
           var handler = function()
          {
               console.info("middleware redundant. ActionDone, calling next");
                next();
          };


           EventManager.once("finished",handler);

           if (actionDone !== "working") 
           {

              actionDone = "working";
              function doneWaiting(){
         //  console.log("finished");
              actionDone = "finished";
              EventManager.emit( "finished" );  
           }
          setTimeout(doneWaiting, 500);
      }

1 个答案:

答案 0 :(得分:0)

我认为你需要的是在检查/创建文件夹的函数上实现lock并对数据库进行检查/创建。

查看this文章以查看示例