第十二天 博文

今天的想法是实现一个聊天室 并在以后不断晚上

 

聊天室是可以实现在线多用户同步即时聊天的一个平台 这么理解吧
  


聊天室特点

   1)支持多人在线


   2)聊天的信息要实时显示  (不停地刷新)

   3)可以踢人(系统自动踢人)释放资源

   4)可以私聊、发送表情
  

实现聊天室的需要的技术有哪些?(大型、微型)

 

   1)javascript 比不可少,用来添加事件、发送请求..

   2)ajax (核心)异步通信是最关键之一(保证参聊人员的体验)

   3)PHP+mysql 存储聊天数据

   4)json 以对象的形式回传数据
  

实现聊天室最主要的目标是:
  

   用户可以快速的发言,并且能够实时的显示出来~
  

   难点:考虑如果10000人,每人1分钟 100句话?
        这些聊天记录如何读取?
 
怎么样实现在线用户的判断(对于不活动的我们合适的时间踢出去)

   

1)假定当我们的在线用户15秒钟没有说话,我们就认为离线了,开踢

 2)计算当前用户的最后一次发言时间和当前时间的差 (如何求差?)

 3)在什么时间判断用户的活动时间?
 

额外的功能 (根据时间而定)
 

    1)屏蔽“某人”发言~

 2)发送表情

 3)实现发送图片

 .....
 

关于防跳墙机制的概念

 

  我们开发中会设定一些区域只允许我们特定的用户使用,但是非指定的用户他们可以直接输入地址进行访问。
 

  我们使用一种方法防止用户访问自己无权限访问的页面 就叫防跳墙
 

关于聊天室数据的建立

聊天的主表

   id,speaker发言人,说的内容content,发言者的ip TheIP,发言的时间 Create_Time,face表情,对谁说 listener
  
  

在线用户表

   id,username,lastTime

  
屏蔽表
   id,speaker,listener
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值