Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
处理大量数据。PHP会话还是每次访问数据?_Php_Mysql_Session_Database Performance - Fatal编程技术网

处理大量数据。PHP会话还是每次访问数据?

处理大量数据。PHP会话还是每次访问数据?,php,mysql,session,database-performance,Php,Mysql,Session,Database Performance,我们正在开发一个web应用程序,用户可以在其中存储一些书签(url/title/shortkey/times-url-clicked)等 每次用户刷新页面时,都会从数据库(不同的服务器)检索此数据。逻辑上,这样你就可以查看书签了。所有书签都在应用程序的每个页面中;因此,用户每次单击的地方,都必须解析这些数据 将这些数据存储到会话中还是每次都从数据库中不断请求更好?在这种情况下,开发人员通常做什么 我可以想象,大约1000个用户的每个刷新按钮都有大约100个书签(每行大约100个字符),这意味着每

我们正在开发一个web应用程序,用户可以在其中存储一些书签(url/title/shortkey/times-url-clicked)等

每次用户刷新页面时,都会从数据库(不同的服务器)检索此数据。逻辑上,这样你就可以查看书签了。所有书签都在应用程序的每个页面中;因此,用户每次单击的地方,都必须解析这些数据

将这些数据存储到会话中还是每次都从数据库中不断请求更好?在这种情况下,开发人员通常做什么

我可以想象,大约1000个用户的每个刷新按钮都有大约100个书签(每行大约100个字符),这意味着每分钟要访问大量数据


基于我们的web应用程序的一个非常类似的例子是。每次访问此页面时,它是从数据库中请求您的收藏夹,还是根据您的ID将收藏夹存储到会话中?

您可以使用它跟踪所需的数据,并且自其在内存中以来速度非常快。

将书签缓存到一个平面文件中,以便在相关位置包含这些书签(即使是结构化的,如果你让他们建立一个文件夹结构)-如果你将书签存储在数据库中,那么你就可以从这些结果中重建。只要在他们破坏任何书签时删除文件即可


如果你能想出一个合适的文件命名方案,比如userId.txt,那么管理起来就很容易了。

为什么不尝试两种方法并计算结果的时间。从本地服务器检索数据通常比从远程服务器检索数据要快,但这取决于两台机器的规格、配置和使用的硬件。原因如下:使用im不确定您是否可以测试1000或10000个用户实际会做什么。所有这些书签都在应用程序每个页面的标题中。因此,无论用户在哪里单击,应用程序都会向他显示所有这些数据。(检索或php会话)