PHP ajax 多次调用

PHP ajax multiple calls

我一直在网络和此处寻找多个答案,但找不到解决我问题的答案。

我正在多次 JQuery ajax 调用同一个 PHP 脚本。首先,我看到每个调用只在前一个调用完成后才执行。我通过将 session_write_close() 添加到脚本的开头来更改它,以防止 PHP 将会话锁定到其他 ajax 调用。我没有在脚本中编辑 $_SESSION 变量,只是从中读取。

现在的行为更好了,但不是让我的所有请求同时开始,而是按块进行,如图所示:

我应该怎么做才能让我的所有请求在同一时刻开始并在没有任何 link 其他请求的情况下实际执行?

为了更清楚起见,这是我的 js 代码:

        var promises = [];
        listMenu.forEach(function(menu) {
            var res = sendMenu(menu);//AJAX CALL
            promises.push(res);
        });
        $.when.apply(null, promises).done(function() {
            $('#ajaxSpinner').hide();
            listMenu = null;
        });

我的 PHP 脚本只是 inserting/updating 数据,并且开始于:

<?php

session_start();
session_write_close();

//execution

我想我做事的方式不对。预先感谢您的宝贵帮助!!

托马斯

这可能是浏览器限制,每个浏览器实例与单个服务器的最大并发连接数。在 Chrome 中,这是 6,这反映了屏幕截图中显示的块的大小。虽然这是 09 年的,但我相信它仍然相关:https://bugs.chromium.org/p/chromium/issues/detail?id=12066