首页 >知识讲堂 >网站建设知识>实现方法及架构:网站页面即时通讯功能

实现方法及架构:网站页面即时通讯功能

2020-12-31 11:17:14 阅读(209 评论(0)

以聊天室为例, 实现web聊天室的方法有很多,包括:基于ajax技术的实现,基于comet(Pushlet)基于XMPP协议的实现,以及基于flash的XMLSocket和远程共享对象的实现。  (1)基于ajax技术的实现。 ajax(异步JavaScript和XML,Asynchronousjavascriptandxml),其功能是实现页面与服务器端的无刷新交互。使用ajax实现web聊天室的基本原理是通过ajax从服务器中获取数据,然后更新页面显示。这种方法简单明了,缺点是实时性不高。 (2)基于Comet技术的实现。 Comet是一种新的Web应用架构。在此架构开发的应用中,服务器端将主动将数据推送到客户端程序,而不需要客户端显式的要求。Comet架构非常适合事件驱动的Web应用,以及对股票交易市场分析、聊天室、Web版在线游戏等交互性和实时性要求较高的应用。 Pushlet是Comet实现(Pushlet是Comet框架的开源):在Servlet机制下,数据直接从Java对象推送到服务器(push)不需要Javaplet或插件的帮助就可以访问客户端页面。它使server端能够定期更新client的web页面,这与传统的request/response不同。 基于HTTTP流的Pushlet,该技术常用于多媒体视频、通信等应用,如QuickTime。与装载HTTP页面后立即关闭HTTP连接的做法相反,Pushlet通过HTTP流不断将新数据推送到client,HTTP连接在此期间不断打开。如何在Java中实现这种Keep-alive的长连接,请参考Sun提供的《HTTPPersistentConnection》HTTP1和W3C.1规范》。 (3)基于XMPP协议的实现 XMPP(可扩展消息处理现场协议)是基于XML的协议,是专门为即时消息和在线现场检测而设计的通信协议。它促进了服务器之间的准确和即时操作。即使其操作系统与浏览器不同,该协议最终也可能允许因特网用户在因特网上向任何其他人发送即时消息。XMPP的前身是Jabber,一个由开源组织产生的网络即时通信协议。开源聊天系统服务器Openfire是基于XMPP协议的Jabber服务器。 webIM的功能可以通过Flash或ajax与Jaber服务器交互, (4)基于flash的XmlSocket的实现 基于rtmp协议,FlashmediaServer是一种强大的流媒体服务器,它提供了强大的流媒体交互功能。在FMS中,提供远程共享对象(SharedObject)客户端可以创建并连接到服务器端的远程共享对象。许多客户端可以连接到相同的远程共享对象。任何客户端都修改了共享对象,服务器将将共享对象的修改信息发送给所有其他连接到共享对象的客户端。这种远程共享对象的机制可以在各个方面实现以下功能:·   远程控制幻灯片放映 ·   文字聊天 ·   网络对战 ·   远程选择和*歌曲 ·   现场拍卖 ·  客户服务应用。 远程共享对象非常适合在web聊天室实现群聊功能。 远程共享对象非常适合在web聊天室实现群聊功能。为每个群组建立一个远程共享对象。通过这种方式,任何用户都可以通过服务器在群组中发送信息,并自动将其发送给所有群组成员。 用远程共享对象实现单聊是不现实的。我们需要使用socket来实现相应的单聊。客户端通过socket服务器与其他客户进行私人聊天。通过socket服务器转发聊天信息。 这种方法是实现web聊天室最有效的方法。即时通信系统架构简要介绍了大型商业应用的IM系统架构。低耦合是设计这种架构的重要组成部分,将整个系统设计成多个相互分离的子系统。我将整个系统分为以下几个部分:(1)状态信息系统  (2)好友系统  (3)P2P系统   (4)其他扩展业务系统首先看状态信息系统(1)connd 可支持UDP或TCP的Client接入服务器,一般建议先选择TCP。connd可以布置多台,client接入时,可以通过简单的DNS轮询实现负载平衡。connd可以安排多个。client接入时,可以通过简单的DNS轮询实现负载平衡。cond功能是维护连接和转发信息包。(2)pconndproxyconnd,代理访问服务器,是connd的扩展,除了connd的功能外,还支持webserver等服务器的访问。(3)msgd消息处理服务器的主要功能是用户状态管理、消息转发(包括合理性验证)和离线消息保存。说一个用户登录成功后,通知所有朋友的状态。在我设计的系统中,用户状态简单地被视为类似的文本聊天信息。以下用户U上线流程,他有好友F1,F2。(1)connd收到U在线消息,并将消息发送到U所在的msgd。(2)msgd获取U的好友,F1,F2;如果F1、F2和U不在同一msgd上,msgd将消息通过connd转移到F1和F2所在的msgd上。(3)最终msgd通过connd将在线通知发送到F1和F2。msgdU是如何获得最新朋友的?我想重点描述一下这个问题。用户的好友数据都在另一个子系统中:好友子系统。msgd通过TCP(为什么使用TCP?)主动从好友系统获取。同时,msgd还缓存了好友数据。msgd获取用户好友时,如果cache是最新的,直接从cache取,否则要从好友子系统取。现在关键问题出来了,如何确定用户的朋友是最新的?我们应该根据不同业务的不同特点灵活采用不同的方法。请看一种高效的处理方法:(1)好友子系统为每个用户的好友计算hash值(可使用MD5)。(2)client在获得好友时,也会获得这个hash值;在发送与好友相关的信息时,将hash值带给msgd。(3)msgd第一次从好友子系统获取用户好友时,也会获得这个hash值;比如转发状态信息,获取好友时,将client带来的hash1与自己的hash2进行比较。。。像IM这样的业务特点是写朋友的数据很少,读很多。与阅读的消耗相比,写作基本上可以忽略不计。以上方法,两者的hash值基本相等,直接从cache获取好友数据。这种处理方法也可以引入到其他应用业务中。建议不要每次都粗暴地跨过程获取类似的朋友数据。

以上就是关于实现方法及架构:网站页面即时通讯功能的相关介绍,更多实现方法及架构:网站页面即时通讯功能相关内容可以咨询我们或者浏览页面上的推荐内容。我们将让你对实现方法及架构:网站页面即时通讯功能有更深的了解和认识。

内容来源:网络,以上内容来源于网络,不代表本站观点,如有侵权,请联系删除。

推荐阅读

b2b网站的盈利模式有哪些

B2B(Business-to-Business)网站是指专门为企业之间进行商务交流和合作而设计的*平台。这些网站提供了各种服务和功能,致力于促进企业之间的贸易和合作。下面是一些常见的B2B网站的盈利模式。 1.广告收入:&nbs...查看详情

实践经验:知识产权使用权出资必须做好以下几点

知识产权是企业创新动能的来源,逐渐成为商业竞争的核心。知识产权的财产权是可以进行转让和许可的,尤其是知识产权使用权,在商业运营中,知识产权使用权出资在实践中日益普遍。本文就知识产权使用权出资涉及的法律风险和相应的…查看详情

抽奖系统哪个好 好用的抽奖软件推荐

随着科技的发展和社会的进步,人们的生活质量大大提高,人们对于精神生活的要求也越来越高,为了满足人们的生活需求和生活乐趣,各种各样的抽奖系统应运而生,下面我给大家介绍六款简单实用的抽奖系统。1、全能抽奖软件全能抽奖系…查看详情

“门店+社群”?新的零售模式企业如何接招

以微信群为平台搭建的社群社交方式,成为当前环境下熟人、半熟人社交的主要方式。在这种环境下,一些创业公司以及一些传统企业,看到了微信群的这种营销价值,创新了社交零售模式。 虽然目前对这种独立的社群零售模式还有比较…查看详情

安装mysql数据库步骤

mysql下载安装教程?MySQL下载和安装教程1.数据库的官网http://www.mysql.com下载MySQL。2.点击进入DOWNLOADS页面,下滑选择MySQLCommunity(GPL)Downloads3选择MySQLIn...查看详情

如何理解知识产权侵权?侵权后果是什么?

知识产权是指对智力劳动成果依法占有、使用、处分和受益的权利,是一种受国家法律保护的无形财产,与房屋、汽车等有形财产一样,具有价值和使用价值。一些重大专利、驰名商标或作品的价值远远高于房屋、汽车等有形财产的价值,企…查看详情

网站推广的方式有哪些,网站推广方式盘点

  现在公司自己做了自己公司的网站,但是很多人都不知道怎么进行网站推广,下面*就给大家来详细介绍一下网站推广的方式有哪些,网站推广方式盘点这一块的内容,希望能帮助到大家。  网站推广的方式有哪些  1、SEO推广  搜索…查看详情

fhd+分辨率是多少

fhd+分辨率是多少?FHD是英文FullHD的简称。我们通常把物理分辨率达到720p即1366*768尺寸以上的影片格式,称为*。而FHD是指物理分辨率达到1080p的1920*1080逐行扫描,是当前常用较好的*规格。分辨率越高,图像表...查看详情

莆田网站建设应该怎么选?

随着互联网技术的不断发展,我们处于了一个网络化、信息化的时代,大到智能家居,小到锅碗瓢盆,所有的生活起居用品都在网络平台上有销售渠道。而在网络社会,成功最重要的秘诀就是信息对称,对于莆田行业来说也不例外,只有打造…查看详情

2022年专利转让有哪些流程(新整理)

如今我国的专利发明越来越多,同时也有很大一部分专利会涉及到转让的问题,其实很多人对专利转让这一块都不是很熟悉,而且很多人不知道相关流程,下面*就给大家来详细介绍一下2022年专利转让有哪些流程这一块的相关内容,希望能帮助…查看详情

中小企业定义及划分标准

  中小企业(SMEs)是指在一个国家或地区中,以小规模,资本相对较少,管理者层次相对较低,业务范围相对较窄及员工数量比较少等特征为主的企业。由于不同国家对中小企业的划分标准不同,从而产生了不同的定义和划分方式。  在…查看详情

【商标代理商标注册】商标的保护力度取决于显著性大小

商标注册的前提条件之一就是要求具有显著性,其实就是要求商标要具备可识别和独创的特点,要与其它注册商标区别开来,让消费者在看到商标的时候就能分辨出产品或服务的提供企业。进行商标代理商标注册都需要了解,根据商标显著性…查看详情

介绍几款实用的抽奖小程序,好用又有趣

不管是年会还店铺的活动,或者是品牌的宣传都缺少不了抽奖的环节,所以一些实用的抽奖小程序就被大家所*,而现在的这种应用工具是越来越多了,到底哪款好用呢?下面就为大家介绍几款实用的抽奖小程序,希望能够带来帮助。1、活动运…查看详情

win7怎么添加打印机

win7hp1010打印机怎么添加hp1015驱动?两个办法,一个是你在系统里选择添加打印机,直接在里面找到驱动安装,一个就是你在网上下载现成的驱动安装包直接安装就可以了window10怎么添加打印机到电脑上没有厂商怎么办?1、点开始---...查看详情

女鞋类目如何入驻淘宝商城?

淘宝商城女鞋,如何才能加入名鞋馆?申请计入淘宝名鞋馆的条件:1、首先必须加入淘宝商城;2、淘宝商家申请时仅限在运动鞋、男鞋、女鞋三类目中发布商品;3、淘宝商家承担店铺所有商品首次快递(中国大陆地区普通快递)运费。内容来自注释:…查看详情

首页

产品

万商学院

客户服务

会员中心

当前站点

h

选择站点

全国站成都

一 客户顾问-张三

已为0个客户提供专业互联网服务咨询
  • 手机号码
  • 验证码图形验证码换一张
  • 短信校验码

    电话咨询

    在线咨询