即时通讯技术说明.doc

  1. 1、本文档共2页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
即时通讯技术说明 一:服务端 1. 服务器端框架 服务端采用三层架构, 数据访问层, 业务处理层, 服务管理层 .数据访问层负责对数据库的访问,对业务数据的保存,更新,和删除操作。 业务处理层负责对通讯业务的处理,如登录验证、用户的管理等。 服务管理层,主要处理WCF服务与通讯接口,实现管理WCF连接与服务的开启与关闭。 难点与解决方案 WCF连接的管理: 因为客户端连接上服务器后,要保持与客户端的连接,以方便服务器接收到发送信息时,能够即时的发送到客户端,同时,在客户端退出登录、关闭客户端、或断网的情况下,服务器能够及时的得到消息,并告知其它用户。 因此,本系统服务端加入了连接池的概念,客户端连接到服务端并登录验证成功后,将客户端的登录状态和回调状态保存在连接池中,如果客户端有消息,就在连接池中找到该用户,并调用客户端的回调方法,将消息发送给客户端,如果客户端退出、断开连接等操作时,就从连接池中删除该用户的连接信息,以保证客户的状态不会出错。 同时,采用连接池后,也减少信息通讯频繁时对数据库的压力。 多线程并发处理: 因为在同一时间,可能会有多个客户端登录或发送消息,这个就存在了同一时间操作连接池时的数据同步问题。这里我采用了线程锁的技术。在需要同步操作连接池的时候,对连接池加排斥锁,使连接池在同一时间只能被一个线程访问。 二:客户端 客户端框架 难点与解决方案 (1)形式多样化的列表界面 为了能够让不同的界面元素(组织结构图标、用户图标、文字),界面层通过自定义控件的方式来处理界面上的图标组合,因些可以实现解决多级组织结构和用户来信息时,联动闪烁的问题。 信息处理中心: 因为同一个用户有多个消息来时,要能处理消息的先后顺序,当多个用户来消息时能够区分不同用户的消息提醒与查看,因此信息处理中心采用了信息池与队列的数据结构结合的形式来处理到达的信息,当用户查看信息时在信息池中调取信息,同时从队列中顺序读取数据。这样,保证了多条用户信息到达时,能够使用户合理的查看到信息。

文档评论(0)

3va3x66 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档