2013-05-07 71 views
0

我有一个客户端需要从Web服务器上的mysqli数据库中的各个表中检索信息。我目前在客户端上建立了一个AJAX查询,它将一个AJAX请求发送到查询数据库并返回一个JSON对象的php页面。客户端然后遍历结果对象并将必要的数据插入到本地数据库中的类似表中。但是,该查询只包含来自一个表的信息。我将需要填充客户端数据库中的多个表。最终,在填充这些数据库时,可能会有大量请求发送到Web服务器。是,我已经拿出可行的解决方案如下:适当的AJAX和PHP mysqli查询请求比例

  1. 设计多个Ajax查询每个职位与视后的分离式处理的查询相同的PHP页面接收,使得不同的客户端上JSON对象返回客户端进行迭代,并插入到本地数据库 (很多AJAX - > 1个PHP)

  2. 设计许多AJAX查询,每个岗位不同的PHP页面用单一的所得JSON每个AJAX/PHP查询以减少任何单个PHP页面上的流量。 (许多AJAX - >许多PHP)

  3. 设计1个大型AJAX查询,向PHP页面发出一个请求,并从数据库返回所有必要的信息,并让客户端将所需的不同部分插入到本地数据库。 (1 AJAX - > 1 PHP)

做这些想法似乎比别人好吗? 我看到所有这些缺陷,所以我想知道是否已经有一个理想的解决方案,以尽量减少在客户端上完成的工作量,以及减少某人可能知道的服务器上的流量/维护。任何帮助/批评表示赞赏。

+0

我建议,一个PHP网页是由很多Ajax查询发布的。 – 2013-05-07 16:19:08

回答

0

选项1和3不是互斥的:您的服务器端代码可以像选项1那样返回小的(或部分的,取决于您如何看待它)数据集,并且同时回复不同类型的请求与完整的数据集。客户端代码根据关于正在执行的操作的信息决定进行什么查询。例如,如果请求的操作是“更新一条记录”,则可能使用一个查询,如果操作是“更新所有记录”,则可能使用一条查询。从广义上讲,这就是我要做的事情,所以我建议留给自己灵活选择合适的查询类型。