Php 使用会话(内存)与重新验证(CPU)
我有一个网页,根据一组15个标准在地图的可见区域绘制数据点。用户可以平移或缩放地图,这将通过查询脚本触发对数据库的AJAX调用,以基于地图可视区域的条件和边界框生成新数据。当前的实现是通过验证脚本对条件进行一次验证,并将其存储在加载到查询脚本的Php 使用会话(内存)与重新验证(CPU),php,ajax,session-variables,Php,Ajax,Session Variables,我有一个网页,根据一组15个标准在地图的可见区域绘制数据点。用户可以平移或缩放地图,这将通过查询脚本触发对数据库的AJAX调用,以基于地图可视区域的条件和边界框生成新数据。当前的实现是通过验证脚本对条件进行一次验证,并将其存储在加载到查询脚本的$\u会话数组中(除非条件发生更改)。验证脚本由一系列preg_match函数和条件if…else语句组成 我可以实现上述节省内存的另一种方法是,每次用户移动地图时,让查询脚本验证所有15个条件。取舍是通过取消$\u会话阵列来交换较低的内存使用率,从而提高
$\u会话
数组中(除非条件发生更改)。验证脚本由一系列preg_match
函数和条件if…else
语句组成
我可以实现上述节省内存的另一种方法是,每次用户移动地图时,让查询脚本验证所有15个条件。取舍是通过取消
$\u会话
阵列来交换较低的内存使用率,从而提高验证的CPU消耗。考虑到同时有许多用户连接到服务器,我如何量化这两个选项之间的权衡,以决定哪种方法更好。获得可靠数据的唯一方法是模拟预期的并发用户峰值来测试这两种实现
如果这不可行,我建议使用缓存(会话),因为增加一些RAM比增加CPU功率更容易(也更便宜)。我不擅长这些问题……但请选择一种对用户具有最佳性能的方式