gpt4 book ai didi

javascript - 使用 AJAX 的 session 启动非常慢

转载 作者:可可西里 更新时间:2023-10-31 23:06:00 26 4
gpt4 key购买 nike

我使用 Ajax 将另一个页面的内容加载到我的带有 Twitter Bootstrap 选项卡的 div 中。我意识到 Ajax 加载请求的时间太长,所以我决定清理代码并只保留“session_start ()”。而问题正是“session_start()”。


Microtime 用于衡量请求的时间。以下是测试结果:

PHP WITH session_start() 加载 AJAX - 29.041733980179 毫秒
在没有 AJAX 的情况下加载带有 session_start() 的 PHP - 0.00010895729064941 毫秒

PHP WITHOUT session_start() 加载 AJAX - 1.6927719116211 毫秒


这是我的 Javascript 代码:

$(function() {
$("#MainTabs").tab();
$("#MainTabs").bind("show", function(e) {
var contentID = $(e.target).attr("data-target");
var contentURL = $(e.target).attr("href");
if (typeof(contentURL) != 'undefined')

$(contentID).html('<img src="<?php echo IMG_DIR; ?>loading/loading-large.gif" width="64" />').load(contentURL, function(){
$("#MainTabs").tab();
});
else
$(contentID).tab('show');
});
$('#MainTabs a:first').tab("show");
});

这是我的 PHP 代码:

<?php
$start = microtime(TRUE); // Start counting

set_time_limit(0);

// session_start();

$temp = microtime(TRUE) - $start;
echo $temp;

exit;

有人知道发生了什么吗?

最佳答案

我遇到了几乎相同的问题,它被称为 session 锁。当您执行多个 ajax 调用时,服务器会阻止为后一个调用写入 session ,因此它们必须等待前一个调用结束。完成 session 后使用 session_write_close() 解锁其他调用。

这里有更多信息:session_write_close() on php.net

关于javascript - 使用 AJAX 的 session 启动非常慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20267462/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com