ajax程序的一点点思考

最近没事无聊,用网页写了一个简单的模仿QQ2012样式风格的聊天室(群)小程序,后台是PHP+mysql,数据库设计也比较简单。一共就5个表:群、群用户、群聊天信息、申请加群的信息、用户资料。每个表设计也极尽简单。

即时聊天实现原理是用ajax不停获取服务器的信息。从开始的时候,就遇到一个问题,ajax请求的数量有好几个,请求用户资料、用户的群列表信息,请求的后台文件我都做在同一个文件(group.get.msg.php)内的,如下图:

开始我就在想,是不是可以把所有信息一起请求下来,然后在前端再分类,这样做的好处是显而易见的,可以减少http请求数。但是这对于整个程序的前期规划需要相对全面细致到位。我是想一点做一点,所以后来就没全部一次请求下来。

现在在做一个功能时遇到一个问题,当打开群消息对话框,或者群消息对话框最小化时,我都想要仍然会请求是否有新的聊天信息,而当群消息对话框关闭时,才停止请求。

因为开始请求群消息时,是按照群ID来请求的,所以现在当群消息对话框最小化时,仍然这样的话,就会造成有多个群对话框最小化就有多个请求在同时进行,这对服务器的消耗可能影响很大。而且前端js的程序相对也没有只请求一次而再来前端对比那么简单,但因为js已经写到了这一步了。

因为之前都想到这一个问题,只是没去解决,所以很后悔,记下来。

测试地址:http://123.147.240.201:8000/test/msg/  因为是联通服务器,电信用户可能出现网络问题。

程序截图:

原文地址:https://www.cnblogs.com/whatmiss/p/2643083.html