数据库消息表.
ID  CONTEXT  TOUSER  STATUS 
1    XXXXX     A        0
2    HHHHH     B        1
.........A登录的时候,TIME执行.查找未读消息.有的话显示,点"确定",更新STATUS为1
这样是没有问题,但是效率比较低,另外如果人多的话数据库压力比较大.考虑过几种方式:
1\server put
2\mongodb,NO SQL
3\socket但是都没有想出来怎么操作,不知道大家是否有同样的情况,特此征询一下解决方案

解决方案 »

  1.   

    可以用indy试试:1、建一个用户表,包含IP字段、端口port字段
    2、每个用户登录进系统时,读取该用户的IP,及可用的消息port,并记录在用户表中
    3、当某个用户发消息时,检查接收用户是否在线,如果在线,则直接通过向IP及指定的Port发送消息,
      如果不在线,则将内容记录到表中去。当该用户下次登录时,自动读取,读取后改状态为已读。
    4、如果人多,可以定期自动将N天前的记录自动删除。
    5、用户读取消息后,可以将消息以XML形式存放在本地电脑上。