是多个Ajax请求更消耗服务端性能,还是服务端Mysql Join更消耗性能? 财富值25

2016-10-14 17:55发布

有这样一个需求:

服务器上存有多张表,他们都有关联键content-id。

之前的做法是:

前端发出一个Ajax请求,后端mysql根据content-id,将多张表做join查询,php输出json,之后前端再将json解析渲染。

但是有同事说这样太消耗性能,要改成这样:

前端改为发出多个Ajax请求,后端对每张表都进行查询,每个ajax请求只对应一张表,不再做join,php输出多个json,之后前端再将json解析渲染。


补充表结构:

所有表的查询都非常简单:
之前的方法,就一条查询:

select * from tableA join tableB on tableB.id = tableA.id ...(可能有多个JOIN)... where id = 5;

要改成的方法,前面方法有多少张表,这个方法就有多少个Ajax请求,就有多少次查询:

select * from tableA where id = 5; select * from tableB where id = 5; select * from tableC where id = 5;

请问哪一种方案更好?

7条回答
段曼 - 我很好
2016-10-14 17:55

而现在而言,数据库是最大的性能瓶颈所在。所以尽可能的降低数据库负载是web开发中重要的一环。

一周热门 更多>