问一个有关聊天室的问题。 - Web 开发 / Ajax
构建聊天室倒还好说,就是客户端和服务器该怎么响应?我的想法是浏览器客户端每发一条信息就存进数据库,然后每隔三秒钟从数据库提取前十条信息。还有什么比较好的办法吗?比如即时响应的,该怎么做?
------解决方案--------------------用sql语句啊
select top 10 * from 表名 order by id asc
------解决方案--------------------浏览器客户端每发一条信息就存进数据库, 这个容易啊,用户提交的时候 insert into table values ....即可
==== 思想重于技巧 ====
------解决方案--------------------用械框架
------解决方案--------------------
毕竟http是基于无状态的,实现真正的实时PUSH只能用一些其他的思想
你可以查查COMET,基本原理就是
client发一个提取数据的请求,服务端发现如果有可以返回的新数据就返回,客户端接受到新数据后立即再次发出请求;如果服务端没有发现有可以返回的数据,则sleep一定时间,然后再去取数据,直到取到。
或者你改用flash,利用里面的socket
------解决方案--------------------