【发布时间】:2023-03-20 10:17:01
【问题描述】:
我的问题与速度无关,我希望尽量减少脚本的内存使用。有限共享托管资源上的 LAMP Web 应用程序(仅限 1GB 虚拟内存)。
- 应用程序在每次页面访问时从 mySQL 读取以从 sys_config 表和用户表加载(非常正常的操作)
我应该将配置加载到会话中吗?知道会话基本上是磁盘写入活动
这会减少内存使用吗? (重要的) 这会更快执行吗? (不太重要)
- 应用程序还在每次页面加载时写入 mySQL 以维护数据位(上次访问和少量微数据),这很重要,因为如果用户仍然在线,它可以让系统知道
我应该将此微数据写入文件吗? (如果以后需要,会定期将其保存到数据库中?)
这会减少内存使用吗? (重要的) 这会更快执行吗? (不太重要)
- 应用程序使用 AjAX,当用户在页面上时,它每隔 10 秒左右的时间间隔在后台加载 AJAX 数据。每个页面都有几组数据可以被处理并因此加载不同(即:联系人、在线用户、组)。我为每组数据分离了每个 http/ajax 请求,假设较小的请求块对于服务器来说会更容易/更轻松地处理,而不是一个 AJAX 请求一次提取和准备不同的数据集。
这是减少 php 内存使用的好策略吗?
【问题讨论】:
-
注意
Knowing sessions are basically disk writing activitysql 也是如此,所有数据库都是文件系统中的真实文件。 -
@JustOnUnderMillions 不是全部,例如mysql提供了一个存储引擎,它使用memory来存储数据;
-
@hassan 当然,你是对的,但默认情况下,所有 mysql 数据库都位于文件系统中。而
MEMORY是唯一使用内存的引擎。 :-) -
memory use这更多地取决于你做什么以及如何做。你喜欢SELECT *还是只选择需要的东西。您是使用file()将给定文件完全加载到内存中,还是使用fopen并逐行读取。使用后你unset的东西。您是使用 ajax 发送html还是仅发送在客户端呈现的纯数据。还有更多.....
标签: php ajax performance memory lamp