方法有很多,要是希望性能高的话,需要用商用的WebServer

解决方案 »

  1.   

    基于B/S结构的不可能实现像C/S那样的实时。比较通常的做法是在客户端用脚本语言设置一个定时器,定时的查询服务端的消息。
      

  2.   

    应该可以解决的!象一个jsp的OA就有这样的功能可以做一个触发,当出发消息的时候,就可以做到
      

  3.   

    当用户登入时,访问一下消息.
    在服务器端建一个线程,定时向已登陆的用户群发消息?
    猜测&&关注
      

  4.   

    可以找一个bbs的源代码看一下,我前段时间曾经看过类似的代码!
      

  5.   

    Ajax技术 
    或者一个小iframe定时刷新
      

  6.   

    卷帙浩繁,懒人期待有人直接贴代码
    在下现在做的就是:
    发一条命令->直接存在发命令表里
    收命令的一端,页面1min刷新一次,刷新一次就读一次数据库。
    但是,每天会有几百个人登入,全天候等待自己的命令,尽量少延迟收令,每个都这么刷新的话,肯定不行啊
      

  7.   

    大家担心的性能问题,其实要看你后台是如何设计了。
    目前的服务器性能都应该不成问题,而性能瓶颈往往出现在对数据库的查询上,查询语句复杂、语句条数多,这些都是造成大用户量访问时,服务器总体性能下降的原因。
    针对楼主的问题,说的深奥一点就是可以用ajax来解决,说的简单一点就是一小段定时循环的javascript。
    用这个js每分钟(自定义)从服务器请求该用户是否有新消息,有的话就接收消息。然后用js在页面某个地方显示一个会闪的gif,自动提示消息的功能就ok了。
    主要是考虑后台如何查询这些信息。信息一般都存在数据库,这个没有疑问,但不能主动去数据库查询这些信息。在数据库中应该有一张专门放置要提示的信息的表,其他信息新增模块每次产生一条新信息,除了记录到信息模块的表中,还应该顺便记录到这张临时表中。
    接着要有一个定时程序,可能每分钟一次,从临时表中读取所有数据(这样很快,一次性查出所有用户的信息),然后将这些数据写入服务器application上下文。
    前台有一个服务类,用来和页面的ajax请求交互。这个类接受到用户的刷新请求,开始到application上下文中的信息列表中查找用户的信息。(不可否认:在内存列表中查找信息远比在数据库中用sql查找信息)如果找到就把信息通过xml->ajax返回给客户端。
    当客户到查看信息页面中查看掉信息后,就删除临时表中的记录,一分钟后的同步动作应该自动将内存中的信息干掉了。
      

  8.   

    页面定时向服务器发送请求看有无新消息,有的话就采用图片替换的方法(类似CSDN)
    并接收消息~