一种数据访问方法及系统与流程

文档序号:16313313发布日期:2018-12-19 05:22阅读:120来源:国知局
本发明属于通信
技术领域
:,尤其涉及一种数据访问方法及系统。
背景技术
:外网是面向大众的开放式互联网,而内网是企业内部的专有网络。在移动互联网高速发展的情况下,越来越多的企业用户要求外网的终端能够支持访问企业内部的专有网络。比如,在企业运维工作中越来越多的需要在非职场进行技术支持。这要求内网与外网互联。但是现有技术下因企业内网的访问限制,企业用户只能通过登录云桌面的方式访问内网。这种方式通常只提供pc版本,使用受限制比较多,不够便捷。技术实现要素:有鉴于此,本发明实施例提供了一种数据访问方法及系统,以提高外网访问内网的便捷性。本发明实施例的第一方面提供了一种数据访问方法,包括:外网服务器接收移动端发送的用户请求;所述用户请求由用户在移动端的预设应用界面触发;所述外网服务器通过负载均衡设备将所述用户请求分配给最低负载的访问服务器;所述外网服务器通过所述负载均衡设备连接多个所述访问服务器;所述访问服务器与内网服务器建立通信连接,将所述用户请求发送给所述内网服务器;所述内网服务器接收并响应所述用户请求,返回反馈信息。本发明实施例的第二方面提供了一种数据访问系统,包括:移动端,用于发送用户请求;外网服务器,用于接收所述用户请求;其中,外网服务器通过负载均衡设备连接多个访问服务器。负载均衡设备,用于将所述用户请求队列中的用户请求分配给最低负载的访问服务器;访问服务器,用于将接收到的用户请求分配至内网服务器;其中,每个所述访问服务器连接多台内网服务器;内网服务器,用于接收并响应所述用户请求,返回反馈信息。在本发明实施例中,采用通过移动终端触发用户请求,然后通过外网服务器访问内网的方式,使得通过外网访问内网的受限条件减少,提高了数据访问的便捷性。附图说明为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1是本发明实施例提供的一种数据访问系统的结构示意图;图2是本发明实施例提供的一种数据访问方法的实现流程图;图3是本发明实施例提供的一种数据访问方法中步骤21的实现流程图;图4是本发明实施例提供的另一种数据访问方法的实现流程图;图5是本发明实施例提供的又一种数据访问方法的实现流程图;图6是本发明实施例提供的又一种数据访问方法中步骤55的实现流程图。具体实施方式以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本发明实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。图1示出了本发明实施例提供的一种数据访问系统的结构示意图。如图1所示,所述数据访问系统包括:移动端,外网服务器,负载均衡设备,多个访问服务器,和多个内网服务器。其中,移动端,用于发送用户请求,所述用户请求由用户在移动端的预设应用界面触发。外网服务器,用于接收移动端发送的所述用户请求,通过负载均衡设备将所述用户请求分配给最低负载的访问服务器,其中,外网服务器通过负载均衡设备连接多个访问服务器。负载均衡设备,用于将所述用户请求分配给最低负载的访问服务器。访问服务器,用于将接收到的用户请求发送给内网服务器;其中,每个所述访问服务器连接多台内网服务器。内网服务器,用于接收并响应所述用户请求,返回反馈信息。在本发明实施例中,所述移动端包括平板电脑(portableandroiddevice,pad)和智能手机等便携式终端设备。移动端安装有预设应用,用户在移动端的预设应用界面触发用户请求,比如移动端安装有运维app,用户通过触发运维app界面中的操作控件而触发用户请求,用户请求包括查询某一系统的安装和/或使用说明书,或查询某一常见问题的解决方案等。待内网服务器返回反馈信息,移动端接收返回的反馈信息,加载反馈信息界面显示该反馈信息。这样用户可以随时随地访问内网,受限条件明显减少,提高了运维效率。访问服务器为位于隔离区(demilitarizedzone,dmz区)的服务器,通过网络地址转换(nat)实现外网与内网的通信,从而访问内网服务器。访问服务器包括如企业web服务器、ftp服务器、或mail服务器等。内网服务器包括如db(database数据库)服务器,内网服务器安装并支持tcp协议。本发明实施例,采用移动端从外网连接内网服务器的方式,提高了用户通过外网登录内网的便捷度。此外,该数据访问方式不再依赖单一网络支撑,提高了访问的稳定性和可靠性;通过将用户请求分配给当次负载最低的访问服务器,能够进一步提高系统的稳定性和可靠性。可选地,外网服务器具体用于:判断所述移动端发送的用户请求是否满足预设地址和端口的组合,例如:一个网络地址和端口的组合202.101.112.0:80;或独立的移动端地址和端口的组合,例如:202.101.112.115:80。若满足,则将满足的用户请求拦截,按照时间先后顺序形成用户请求队列;若不满足,则反馈请求失败信息给移动端。对移动端分配地址和端口,从而授权其访问外网服务器的权限,因此,可以通过验证移动端的地址和端口,提高网络整体的安全性。可选地,所述负载均衡设备具体用于:每隔预设时间间隔通过icmp包对访问服务器的ip地址进行检测,如果在设定的时间内能收到该ip地址的icmp的回应,则认为该服务器能提供服务;或,每隔预设时间间隔通过tcp包对访问服务器的服务端口进行检测,如果在设定的时间内能收到访问服务器的服务端口的回应,则认为该访问服务器能提供服务;确定能提供服务的访问服务器。负载均衡设备将用户请求队列中的用户请求轮询分发给最低负载且能提供服务的访问服务器。对访问服务器的ip地址或服务端口进行检测,确定访问服务器是否能提供服务,从而确定出能提供服务的访问服务器,进一步将用户请求分发至能提供服务的且最低负载的访问服务器,进一步提高网络系统的稳定性和可靠性。可选地,所述访问服务器还用于:获取多个内网服务器的状态信息,确定多个所述内网服务器的状态,根据所述内网服务器的状态更新内网服务器列表,所述内网服务器列表用于分配用户请求。其中,所述状态包括:内网服务器是否宕机;若确定内网服务器宕机,则从内网服务器列表中删除该内网服务器,不参与轮询,直到其恢复正常。若确定内网服务器正常,则将该内网服务器加入到内网服务器列表。作为本发明一实施例,所述访问服务器为ngnix服务器,访问服务器获取多个内网服务器的状态信息,包括:实时检测多个内网服务器获得内网服务器的状态信息。作为本发明另一实施例,访问服务器获取多个内网服务器的状态信息,包括:访问服务器定时发送连接确认消息给内网服务器,例如,该连接确认消息为实时时钟信息,若未在预设时间间隔内收到所述内网服务器的返回消息,则确定该内网服务器宕机,然后更新该内网服务器的状态信息为宕机。获取内网服务器的状态,确定内网服务器是否宕机,从而更新内网服务器列表,使得宕机的内网服务器不参与用户请求的轮询,进一步提高网络系统的稳定性和可靠性。更进一步地,访问服务器具体用于:获取内网服务器列表中各内网服务器的负载能力值val1和数据处理速度值val2;根据val1和val2计算各内网服务器的权值wei;wei=w1·val1+w2·val2;其中,w1=0.4,w2=0.6;访问服务器将接收到的用户请求根据所述权值wei轮询分配至负载能力值val1不为零的各内网服务器。其中,所述负载能力值反应内网服务器当前能够承担负载的能力高低。各内网服务器的负载能力值val1初始值为预设值,例如,可以均为10,也可为不同预设值,每个内网服务器的初始负载能力值和数据处理速度值val2可预先配置于所述访问服务器中。若内网服务器分配一个用户请求后,所述内网服务器的负载能力值val1减1,若所述内网服务器返回与该用户请求对应的反馈信息,则所述负载能力值val1加1;若内网服务器的负载能力值val1为0,则将该内网服务器从内网服务器列表中删除,不参与轮询,直至负载能力值val1不为0。获取内网服务器的权值,根据所述权值确定用户请求的轮询分配,提高服务器负载能力。可选地,所述访问服务器将接收到的用户请求根据所述权值wei轮询分配至负载能力值val1不为零的各内网服务器,包括:访问服务器将接收到的用户请求轮询分配至负载能力值val1不为零且权值wei最大的内网服务器;或根据所述内网服务器列表中负载能力值val1不为零的内网服务器的权值wei,确定负载能力值val1不为零的内网服务器的分配概率;将访问服务器用户请求队列中的用户请求按照所述分配概率分配至负载能力值val1不为零的所述内网服务器。例如,内网服务器包括a、b和c,若内网服务器a、b和c的负载能力值均不为0,且权值wei依次为2、3和5。确定内网服务器a、b和c的分配概率依次为2/(2+3+5)=20%,3/(2+3+5)=30%,和5/(2+3+5)=50%。若当次轮询访问服务器队列中的用户请求包括用户请求1至用户请求10,按照分配概率,将10个用户请求中的2个请求分配至内网服务器a、将3个用户请求分配至内网服务器b,将5个用户请求分配至内网服务器c。而当下一次轮询时,重复该步骤,即获得该次轮询对应的权值和分配概率,在此基础上进行下一次用户请求的分配。通过将用户请求队列中的用户请求按照分配概率分配至负载能力值val1不为零的内网服务器,从而实现当次轮询更优的资源分配,提高了系统负载能力。图2示出了本发明实施例提供的一种数据访问方法的流程图。如图2所示,所述方法包括步骤s21至s24。s21,外网服务器接收到移动端发送的用户请求,所述用户请求由用户在移动端的预设应用界面触发。s22,所述外网服务器通过负载均衡设备将所述用户请求分配给最低负载的访问服务器,所述外网服务器通过所述负载均衡设备连接多个所述访问服务器。s23,所述访问服务器与内网服务器建立通信连接,将所述用户请求发送给所述内网服务器。s24,所述内网服务器接收并响应所述用户请求,返回反馈信息。本发明实施例中,上述服务器接入方法基于图1所示的数据访问系统实现。可选地,在图2所述实施例的基础上,数据访问方法还包括:移动端接收返回的反馈信息,加载反馈信息界面显示该反馈信息。作为本发明一实施例,如图3所示,所述s21包括:s211,外网服务器判断移动端发送的用户请求是否满足预设地址和端口的组合,或独立的移动端地址和端口的组合;若满足,则执行s212;若不满足,则执行s213。s212,将满足的用户请求拦截,按照时间先后顺序形成用户请求队列;s213,反馈请求失败信息给移动端。作为本发明另一实施例,在图2或图3所示实施例的基础上,本发明另一实施例做了进一步改进,以对图2所示实施例进行改进为例进行说明。如图4所示,所述方法包括步骤s41至s45。s41,外网服务器接收移动端发送的用户请求。s42,负载均衡设备每隔预设时间间隔通过icmp包对访问服务器的ip地址进行检测,如果在设定的时间内能收到该地址的icmp的回应,则认为该服务器能提供服务;或,负载均衡设备每隔预设时间间隔通过tcp包对访问服务器的服务端口进行检测,如果在设定的时间内能收到访问服务器的服务端口的回应,则认为该访问服务器能提供服务;确定能提供服务的访问服务器;s43,外网服务器通过负载均衡设备将用户请求轮询分配给最低负载且能提供服务的访问服务器;s44,访问服务器将接收到的用户请求分配至内网服务器;其中,每个所述访问服务器连接多台内网服务器。s45,所述内网服务器接收并响应所述用户请求,返回反馈信息。作为本发明另一实施例,在图2、图3或图4所示实施例的基础上,本发明另一实施例做了进一步改进,以对图4所示实施例进行改进为例进行说明。如图5所示,所述方法包括步骤s51至s56。s51,外网服务器接收移动端发送的用户请求。s52,负载均衡设备每隔预设时间间隔通过icmp包对访问服务器的ip地址进行检测,如果在设定的时间内能收到该ip地址的icmp的回应,则认为该服务器能提供服务;或,负载均衡设备每隔预设时间间隔通过tcp包对访问服务器的服务端口进行检测,如果在设定的时间内能收到访问服务器的服务端口的回应,则认为该访问服务器能提供服务;确定能提供服务的访问服务器。s53,外网服务器通过负载均衡设备将用户请求分配给最低负载且能提供服务的访问服务器。s54,访问服务器获取多个内网服务器的状态信息,确定多个所述内网服务器的状态,根据所述内网服务器的状态更新内网服务器列表。其中,所述状态包括:内网服务器是否宕机。每个所述访问服务器连接多台内网服务器。内网服务器列表用于后续分配用户请求。若确定内网服务器宕机,则从内网服务器列表中删除该内网服务器,不参与轮询,直到其恢复正常。若确定内网服务器正常,则将该内网服务器加入到内网服务器列表。s55,访问服务器将接收到的用户请求轮询分配至内网服务器列表中的内网服务器。s56,所述内网服务器接收并响应所述用户请求,返回反馈信息。作为本发明一实施例,如图6所示,所述步骤s55包括步骤s551至s553。s551,访问服务器获取内网服务器列表中各内网服务器的负载能力值val1和数据处理速度值val2;其中,所述负载能力值反应内网服务器当前能够承担负载的能力高低。s552,根据val1和val2计算各内网服务器的权值wei;wei=w1·val1+w2·val2;其中,w1=0.4,w2=0.6。s553,访问服务器将接收到的用户请求根据所述权值wei轮询分配至负载能力值val1不为零的各内网服务器。其中,所述负载能力值反应内网服务器当前能够承担负载的能力高低。各内网服务器的负载能力值val1初始值为预设值,例如,可以均为10,也可为不同预设值,每个内网服务器的初始负载能力值和数据处理速度值val2可预先配置于所述访问服务器中。若内网服务器分配一个用户请求后,所述内网服务器的负载能力值val1减1,若所述内网服务器返回与该用户请求对应的反馈信息,则所述负载能力值val1加1;若内网服务器的负载能力值val1为0,则将该内网服务器从内网服务器列表中删除,不参与轮询,直至负载能力值val1不为0。负载能力值val1和数据处理速度值val2的权重占比分别为w1=0.4,w2=0.6,取这些数值,相比于直接将用户请求依次分配至内网服务器的情形,能够提高内网服务器的整体负载能力10%左右,因此本发明中权重占比取这些数值。获取内网服务器的权值,根据所述权值确定用户请求的轮询分配,提高服务器负载能力。更进一步地,s553包括:访问服务器将接收到的用户请求轮询分配至负载能力值val1不为零且权值wei最大的内网服务器;或根据所述内网服务器列表中负载能力值val1不为零的内网服务器的权值wei,确定负载能力值val1不为零的内网服务器的分配概率;将访问服务器用户请求队列中的用户请求按照所述分配概率分配至负载能力值val1不为零的所述内网服务器。例如,内网服务器包括a、b和c,若内网服务器a、b和c的负载能力值均不为0,且权值wei依次为2、3和5。确定内网服务器a、b和c的分配概率依次为2/(2+3+5)=20%,3/(2+3+5)=30%,和5/(2+3+5)=50%。若当次轮询访问服务器队列中的用户请求包括用户请求1至用户请求10,按照分配概率,将10个用户请求中的2个请求分配至内网服务器a、将3个用户请求分配至内网服务器b,将5个用户请求分配至内网服务器c。而当下一次轮询时,重复该步骤,即获得该次轮询对应的权值和分配概率,在此基础上进行下一次用户请求的分配。以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1