我目前正在将网页从php 5.0.x迁移到新服务器到php 5.6
现在我有一个页面循环数据库查询7次,结果被加载到表中。我知道这不是最好的做事方式,但它运作得很好,而且我目前还没有其他选择可以解决这个问题,因为结果来自不同的数据库。缓存不是一种选择,因为我需要内容始终是最新的。
从访问网站到显示它大约需要三到四秒钟。查询最近得到优化,但仍需要很长时间才能执行。
我的问题:旧的网络服务器按表显示结果表,因此用户会看到页面已经在处理它的请求。加载Table1的内容时,它会显示,服务器会关注第二个结果集。
新的网络服务器立即生成网站,并且在加载7个结果集并将数据映射到网格之前,内容不会显示。
是否有选项,可能在php.ini
中,我可以获得与旧网络服务器相同的结果?我真的不知道如何谷歌它所以我问你们。
另一方面,可能有一个选项可以一次运行所有查询(多线程?)而不是按顺序运行?
对不起我的"改进"英语。
答案 0 :(得分:0)
这可能与输出缓冲有关。您可以使用ob_flush函数强制将缓冲区内容写入客户端,只需在查询执行后添加对ob_flush的调用。
php.ini设置是output_buffering。还要检查output_compression设置,因为它可能导致缓冲区刷新问题。