本发明涉及互联网技术领域,特别涉及一种基于微信平台的网络负载均衡方法和系统。
背景技术:
如同即时聊天工具(IM)在互联网用户中的普及一样,移动互联网用户也大量使用移动聊天工具(MIM),很多用户都是通过朋友间告知而开始使用该业务,并采用MIM来发送即时文字、图片或者视频信息,在使用过程中用户黏性不断提高。MIM业务提供商高度重视此业务的发展,通过MIM来实现移动互联网客户群的积累,通过流量经营逐渐巩固用户基础,并带动移动互联网广告、电子商务、门户、互联网金融和互联网社区等业务的发展,从而实现移动互联网流量的价值经营。
在众多MIM产品中,微信的发展最引人注目。截至2015年年第一季度末,微信每月活跃用户已达到5.49亿,用户覆盖200多个国家、超过20种语言,各品牌的微信公众账号总数已经超过800万个,移动应用对接数量超过85000个,微信支付用户则达到了4亿左右。在5亿多的微信用户中,55.2%的用户每天打开微信10次以上,超过30次的重度用户占比24.9%;62.7%的用户的好友超过50人,49.2%的用户的好友超过100人;57.3%的用户通过微信结识新朋友或者联系上长期不联系的老友。微信已经在亚洲地区的移动社交APP领域占据第一的市场份额。
随着网络宽带的日益普及和网络传输技术的不断成熟,微信即时聊天工具的信息传输功能越来越强大,吸引了越来越多的用户使用即时聊天工具。用户 可以通过微信平台实现免费的、支持跨通信运营商、跨操作系统平台的信息传递,通过网络快速发送信息,并且支持多人群聊。用户可以通过微信除了可以享受到类似于传统电信运营商所提供的类似于短信、彩信等额业务,并且还可以享受到视频片段、音乐播放等多媒体增值服务,社交功能大大增强。微信公众帐号的页面中也大量的提供图片、视频的资讯,以提高内容的吸引力,争取更多的关注。而多媒体化也是互联网发展趋势之一,微信内容向音视频方向发展,符合了互联网发展的大趋势。
微信信息内容向多媒体化方向发展,直接带来的就是网络数据流量的飙升及网络流量分布的不平衡。热点视频、热点文章、热点公众号随机的出现在微信平台,也成为了微信营销的工具,微信营销也进一步推动了热点的蔓延和传播。网络流量分布的不平衡,会造成微信平台网络的突然崩溃或者网速、服务的性能超低,用户端在接收不到微信信息的情形下,不但使用体验大打折扣,而且会逐渐降低对微信服务的信任,这对于微信平台而言是非常严重的危机。为了保证微信平台的正常运营,必须要管理好微信平台的网络负载均衡。
技术实现要素:
本发明提供一种基于微信平台的网络负载均衡方法和系统,对微信平台网络的负载均衡进行管理,实时监控微信平台中不同业务处理服务器的负载情况,根据负载分布情况调节数据流量的流向,保证微信信息能够及时地传送到目的地,提高了微信平台运行的可靠性;而且本负载均衡技术方案能够适应突发的、大数据流量的微信业务的需要,符合了多媒体化的发展趋势,满足了微信个人用户和公众帐号日益增长的多媒体微信信息发送的需求。
本发明的技术方案提供了一种基于微信平台的网络负载均衡方法,包括以下步骤:
微信信息通过web服务器和代理服务器发送到外部网络;
代理服务器将微信信息发送给负载均衡服务器;
负载均衡服务器将微信信息转发给业务处理服务器;
业务处理服务器将微信信息发送到微信软件客户端。
进一步的,web服务器连接代理服务器,代理服务器将web服务器和负载均衡服务器进行隔离;
所述微信信息由web服务器通过代理服务器传送到负载均衡服务器。
进一步的,代理服务器安装有防火墙,为前端的web服务器及微信平台提供安全服务。
进一步的,负载均衡服务器的数量为至少一台;
负载均衡服务器根据微信信息转发的任务量来进行配置。
进一步的,负载均衡服务器下端连接业务处理服务器;
负载均衡服务器根据负载均衡算法,调节向下端各个业务处理服务器的转发任务量,实现各个业务处理服务器之间的负载均衡。
进一步的,每台负载均衡服务器连接至少二台业务处理服务器;
业务处理服务器的数量根据负载均衡算法和微信信息的业务量进行配置,采取启动新的业务处理服务器或关闭已有业务处理服务器的方法实现可扩展性调节。
进一步的,新启动的业务处理服务器向负载均衡服务器提交注册信息;
注册成功后,业务处理服务器和负载均衡服务器实现心跳连接;
通过心跳连接,业务处理服务器向负载均衡服务器发送状态信息;
负载均衡服务器根据所接收的业务处理服务器的状态信息,调节微信信息的转发量。
本发明的技术方案还提供了一种基于微信平台的网络负载均衡系统,包括:微信平台,web服务器,代理服务器,负载均衡服务器,业务处理服务器,移动终端,其中,
微信平台用于提供微信交流的平台,产生微信信息,并将微信信息发送到 web服务器;
web服务器用于将微信平台接入Internet公众网;
代理服务器用于连接web服务器和负载均衡服务器,并为前端的web服务器及微信平台提供安全服务;
负载均衡服务器用于向业务处理服务器转发微信信息,并保持各个业务处理服务器之间的负载均衡;
业务处理服务器用于将微信信息发送至移动终端;
移动终端安装有微信软件客户端,用于登录微信平台和发送、接收微信信息。
进一步的,代理服务器安装有防火墙,实现微信平台与外部Internet网络的安全隔离。
进一步的,负载均衡服务器根据微信信息转发的任务量来配置相应的的数量;
负载均衡服务器根据负载均衡算法调节业务处理服务器的任务量。
本发明技术方案设计采用专用的网络设备来进行微信平台的负载均衡控制,能够实时监控不同微信平台上各个业务处理服务器的负载情况,并根据负载情况调节任务流的流向,实现业务处理器的负载的实时动态均衡,保证微信信息能够及时地传送到目的地,提高了微信平台运行的可靠性。同时,本负载均衡技术方案能够适应突发的、大数据流量的微信业务的需要,根据微信信息业务量的变化来实现动态的扩展,符合了微信信息向多媒体化方向发展的趋势,满足了微信个人用户和公众帐号日益增长的多媒体微信信息发送的需求。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1为本发明实施例一中基于微信平台的网络负载均衡方法的流程图;
图2为本发明实施例一中基于微信平台的网络负载均衡系统的结构图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
图1为本发明实施例一中基于微信平台的网络负载均衡方法的流程图。如图1所示,该流程包括以下步骤:
步骤101、微信信息传送到web服务器。
微信平台和web服务器连接,web服务器作为微信平台与外部连接的接口,web服务器再连接代理服务器;
微信平台为用户提供及时信息的平台,产生大量的用户信息。
步骤102、微信信息传送到代理服务器。
代理服务器安装有防火墙,为web服务器及前端的网络设备提供安全服务,将web服务器统计分析服务器与外部的网络进行隔离。
步骤103、代理服务器将微信信息发送给负载均衡服务器。
负载均衡服务器的数量为至少一台;
负载均衡服务器根据微信信息转发的任务量来进行配置,在微信信息转发量较大时,则启动新的负载均衡服务器,以确保微信信息转发的及时性。
步骤104、负载均衡服务器将微信信息转发给业务处理服务器。
负载均衡服务器下端连接业务处理服务器;
每台负载均衡服务器连接至少二台业务处理服务器;
负载均衡服务器根据负载均衡算法,调节向下端各个业务处理服务器的转发任务量,实现各个业务处理服务器之间的负载均衡。
业务处理服务器的数量根据负载均衡算法和微信信息的业务量进行配置,采取启动新的业务处理服务器或关闭已有业务处理服务器的方法实现可扩展性调节,具体方法为:
新启动的业务处理服务器向负载均衡服务器提交注册信息;
注册成功后,业务处理服务器和负载均衡服务器实现心跳连接;
通过心跳连接,业务处理服务器向负载均衡服务器发送状态信息;
已经运营中的业务处理服务器关闭时,心跳连接终止;
负载均衡服务器在心跳连接终止后,动态调节微信信息的转发方向;
负载均衡服务器和业务处理服务器之间有信息丢失保护机制,对于转发失败的微信信息能够重新发送。
步骤105、业务处理服务器将微信信息发送到微信软件客户端。
业务处理服务器把接收到的微信信息发送到微信软件客户端,实现微信信息的端到端发送。
发送、接收的信息包括但不限于文字信息、音频文件、视频文件、网页链接、文件透明传输。
为了实现上述基于微信平台的网络负载均衡的流程,本实施例还提供了一种基于微信平台的网络负载均衡系统,图2为本发明实施例一中基于微信平台的网络负载均衡系统的结构图。
如图2所示,该系统包括:微信平台201,web服务器202,代理服务器203,负载均衡服务器204,业务处理服务器205,移动终端206,其中,
微信平台用于为用户提供互联网及时通信的平台,用户通过微信平台进行即时通讯的过程中产生大量的微信信息,并将微信信息发送到web服务器。
web服务器用于连接微信平台和外部网络,将微信平台接入Internet公众网,是微信平台与外部Internet公众网连接的接口,为微信信息的传送提供通道。
代理服务器用于连接web服务器和负载均衡服务器,并安装有防火墙,为前端的web服务器及微信平台提供安全服务,起到隔离微信平台与外部Internet公众网的作用。
负载均衡服务器用于向业务处理服务器转发微信信息,并根据负载均衡算法调节各个业务处理服务器之间的负载均衡;同时,负载均衡服务器控制业务处理器的数量,实现微信转发任务量和网络设备之间的平衡;新启动的业务处理服务器向负载均衡服务器提交注册信息;负载均衡服务器的数量为至少一台,所连接的业务处理服务器的数量为至少两台。
业务处理服务器用于将微信信息发送至移动终端,实现端到端的微信信息沟通;业务服务器和负载均衡服务器之间通过心跳连接实现状态信息的交互,负载均衡服务器根据所获得的状态信息调节业务服务器的数量和微信信息任务量;若心跳连接终止,则负载均衡服务器认为该业务处理服务器终止运行;负载均衡服务器和业务处理服务器之间有信息丢失保护机制,对于转发失败的微信信息能够重新发送。
移动终端安装有微信软件客户端,用于登录微信平台和发送、接收微信信息。
本发明技术方案设计专用的网络设备来进行微信平台的负载均衡控制,能够实时监控不同微信平台上各个业务处理服务器的负载情况,并根据负载情况调节任务流的流向,实现业务处理器的负载的实时动态均衡,保证微信信息能够及时地传送到目的地,提高了微信平台运行的可靠性。同时,本负载均衡技术方案能够适应突发的、大数据流量的微信业务的需要,根据微信信息业务量的变化来实现动态的扩展,符合了微信信息向多媒体化方向发展的趋势,满足 了微信个人用户和公众帐号日益增长的多媒体微信信息发送的需求。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。