一种浏览器即时通讯服务分布式部署方法技术

技术编号:16607702 阅读:103 留言:0更新日期:2017-11-22 17:59
一种浏览器即时通讯服务分布式部署方法,通过websocket集群部署nginx代理redis发布订阅,采用nginx作为统一代理,负载均衡到各个服务器节点,通过redis发布订阅通讯各个websocket节点达到高可用,快速处理待办信息的能力;本发明专利技术的有益效果是:能达到负载均衡的目标;能够快速动态横向提高待办消息服务器的处理能力,能够通过快速增加服务器节点的手段来提高待办信息处理能力;可以解决目前工作台待办消息处理速度慢,当遇到待办消息剧增时候会宕机的问题,在以后的项目中如是遇到浏览器即时通讯需要高可用,大并发的需求可以采用该方案解决。降低了达到即时消息高可用,大并发的技术难度。

【技术实现步骤摘要】
一种浏览器即时通讯服务分布式部署方法
本专利技术属一种浏览器即时通讯服务分布式部署方法技术。
技术介绍
工作台的统一待办是工作台重点功能之一,通过与6+1其它业务系统集成,工作台将来自于6+1业务系统的待办工作集中进行展现,为用户提供跨平台的工作办理功能。用户登录工作台后,在工作台统一待办功能中不仅可以看见与自己相关的,来自于各个业务系统中的待办工作,还可以直接进行工作的处理。从而免去了以往只有登录各个业务系统才能处理完毕所有待办工作的麻烦,提高了整体的工作效率。可见工作台的待办数量是6+1其它业务系统待办之和,数量庞大,待办具有实时性,需要第一时间通知用户,通知用户的手段包含浏览器在线用户通知和手机短信通知。如何处理如此庞大的信息并且及时通知用户是一个难题,自工作台建设之日起,专门新建了项目来处理这些待办信息,采用websocket技术即时通知用户,由于websocket技术的特殊性该工程起初并没有采用分布式集群部署方案。工作台自上线之后,随着使用用户数增加,待办数量开始剧增,消息处理模块无法承担如此巨大的待办信息,导致用户无法正常接收待办通知。
技术实现思路
本专利技术的目的正是为了克服上述现有技术存在的缺陷和不足而提供一种浏览器即时通讯服务分布式部署方案。本专利技术的目的是通过如下技术方案来实现的。一种浏览器即时通讯服务分布式部署方法,通过websocket集群部署nginx代理redis发布订阅,采用nginx作为统一代理,负载均衡到各个服务器节点,通过redis发布订阅通讯各个websocket节点达到高可用,快速处理待办信息的能力;用户的websocket链接被负载均衡到不同服务器,当服务器节点足够多的时候,就能够接受更多用户的websocket请求链接,从而接受更多用户同时在线,在业务繁忙时期不至于宕机;因为websocket服务器分布式部署之后随之而来的挑战是即时消息受到影响,当用户A链接在在SA服务器节点,需要给用户B在SB服务器节点发送消息时,无法发送;采用redis发布订阅很好的解决了该问题,使待办消息能够准确发送给用户;每一个服务器节点都订阅自己的频道,当用户websocket链接到一台服务器的时候,将信息存到内存,包含自己所在的服务器;当别的用户给该用户发送消息的时候,先到内存中拿到用户所在的服务器,并且将消息发送到该服务器所在的频道中;目标服务器监听到消息之后,处理该消息并且给用户浏览器发送消息如果用户在线,随后发送短信通知。本专利技术的优点或好处:本专利技术的有益效果是,由于采用nginx作为websocket请求的代理,将来自用户浏览器的websocket请求分发到各个服务器几点,达到负载均衡的目标;能够快速动态横向提高待办消息服务器的处理能力,当系统上线发现少数节点分布式部署无法处理数量庞大的待办信息时候,能够通过快速增加服务器节点的手段来提高待办信息处理能力;本专利技术技术可以解决目前工作台待办消息处理速度慢,当遇到待办消息剧增时候会宕机的问题,在以后的项目中如是遇到浏览器即时通讯需要高可用,大并发的需求可以采用该方案解决。降低了达到即时消息高可用,大并发的技术难度。附图说明图1为websocket服务器交互示意图。具体实施方式见图1,一种浏览器即时通讯服务分布式部署方法,通过websocket集群部署nginx代理redis发布订阅,采用nginx作为统一代理,负载均衡到各个服务器节点,通过redis发布订阅通讯各个websocket节点达到高可用,快速处理待办信息的能力;用户的websocket链接被负载均衡到不同服务器,当服务器节点足够多的时候,就能够接受更多用户的websocket请求链接,从而接受更多用户同时在线,在业务繁忙时期不至于宕机;因为websocket服务器分布式部署之后随之而来的挑战是即时消息受到影响,当用户A链接在在SA服务器节点,需要给用户B在SB服务器节点发送消息时,无法发送;采用redis发布订阅很好的解决了该问题,使待办消息能够准确发送给用户;每一个服务器节点都订阅自己的频道,当用户websocket链接到一台服务器的时候,将信息存到内存,包含自己所在的服务器;当别的用户给该用户发送消息的时候,先到内存中拿到用户所在的服务器,并且将消息发送到该服务器所在的频道中;目标服务器监听到消息之后,处理该消息并且给用户浏览器发送消息如果用户在线,随后发送短信通知。本文档来自技高网...
一种浏览器即时通讯服务分布式部署方法

【技术保护点】
一种浏览器即时通讯服务分布式部署方法,其特征在于,通过websocket集群部署nginx代理redis发布订阅,采用nginx作为统一代理,负载均衡到各个服务器节点,通过redis发布订阅通讯各个websocket节点达到高可用,快速处理待办信息的能力;用户的websocket链接被负载均衡到不同服务器,当服务器节点足够多的时候,就能够接受更多用户的websocket请求链接,从而接受更多用户同时在线,在业务繁忙时期不至于宕机;因为websocket服务器分布式部署之后随之而来的挑战是即时消息受到影响,当用户A链接在在SA服务器节点,需要给用户B在SB服务器节点发送消息时,无法发送;采用redis发布订阅很好的解决了该问题,使待办消息能够准确发送给用户;每一个服务器节点都订阅自己的频道,当用户websocket链接到一台服务器的时候,将信息存到内存,包含自己所在的服务器;当别的用户给该用户发送消息的时候,先到内存中拿到用户所在的服务器,并且将消息发送到该服务器所在的频道中;目标服务器监听到消息之后,处理该消息并且给用户浏览器发送消息如果用户在线,随后发送短信通知。

【技术特征摘要】
1.一种浏览器即时通讯服务分布式部署方法,其特征在于,通过websocket集群部署nginx代理redis发布订阅,采用nginx作为统一代理,负载均衡到各个服务器节点,通过redis发布订阅通讯各个websocket节点达到高可用,快速处理待办信息的能力;用户的websocket链接被负载均衡到不同服务器,当服务器节点足够多的时候,就能够接受更多用户的websocket请求链接,从而接受更多用户同时在线,在业务繁忙时期不至于宕机;因为websocket服务器分布式部署之后随之而来的挑...

【专利技术属性】
技术研发人员:衡星辰李绪光林成虎李玉辉杜旭张鑫
申请(专利权)人:中国南方电网有限责任公司昆明能讯科技有限责任公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1