我是电子商务网站模块的开发人员。该模块使用 ajax 调用在网站页面上显示一些动态数据 (html)。Ajax 调用从数据库获取 html。每次页面加载都会有 1 个查询。数据库查询响应大小约为 10kb。
我的客户担心这太多了,他们写道,他们看到数据库处理消耗因此大幅增加。他们说,分析数据库查询后发现查询缓存没有缓存查询答案,因为它大于 10KB。
这真的是一件大事吗?我猜我的客户看到数据库处理消耗的增加是因为其他原因。
但是假设每个查询都会从数据库 html 返回 100kb 大小。如果每次页面加载时都会发生这种情况,那会不会太严重?这会产生重大影响还是只是轻微影响?
我希望有人能根据自己的经验对此给出一些见解。我对此有自己的答案,但可能太主观了。
谢谢你!
答案1
如果没有关于您的系统的进一步详细信息,我想没有人可以回答您的问题,但我可以建议更系统地处理这个问题。
在这种情况下,您可能需要从客户那里获得进一步的澄清。认为“x”KB 太多的原因是什么?是来自之前的系统还是来自某个交易繁忙的日子?您还需要进一步了解数据库的运行情况。以及 Web 前端。
您是否对数据库进行过任何测试或基准测试?或者您是否有一个可以进行压力测试的测试平台?基本上,您需要系统地处理这个问题并定义“太多”。您的客户可能无法判断为什么 10KB 太多,但您应该想出一种方法来了解为什么会这样。其他一些需要考虑的问题:您能测量页面加载、系统加载、数据库查询时间吗?这些查询是什么类型的(选择?更新?)?是否涉及任何缓存?