CN108111599B - 一种不稳定网络环境下的数据请求方法及*** - Google Patents
一种不稳定网络环境下的数据请求方法及*** Download PDFInfo
- Publication number
- CN108111599B CN108111599B CN201711372764.3A CN201711372764A CN108111599B CN 108111599 B CN108111599 B CN 108111599B CN 201711372764 A CN201711372764 A CN 201711372764A CN 108111599 B CN108111599 B CN 108111599B
- Authority
- CN
- China
- Prior art keywords
- server
- request
- server node
- preset
- circular queue
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明涉及一种不稳定网络环境下的数据请求方法及***,该方法包括:当用户输入请求数据时,根据服务器集群中各服务器的权重值比例选取服务器节点,向所述服务器节点发送数据请求;当超过预设请求时长未收到所述服务器节点返回结果时,将所述服务器节点对应的权重值降低预设值。本发明通过获取服务器集群中各服务器的权重值,根据各服务器的权重值比例选取服务器节点,并连接该服务器节点,并对连接失败的服务器节点相应的权重值进行降低,由此来选取连接成功率高的服务器进行连接,以此来提供数据请求连接的成功率。
Description
技术领域
本发明涉及航空数据请求技术领域,尤其涉及一种不稳定网络环境下的数据请求方法及***。
背景技术
目前,传统的客户机-服务器模型,其中每个请求客户机和服务器之间建立有一个专用流,主要因为在服务器端繁重的服务器负载和有限的网络带宽,其具有有限的可扩展性。最近,对等网络(P2P)已经越来越广泛用于许多可扩展应用,如在全球范围的用户中间共享流和文件。
但是,但是在某些环境下移动网络是不稳定的,客户端极易断开网络;如用户需要请求的数据时国外服务器的数据时,由于国内服务器和国外服务器网络不稳定,经常抖动导致连接超时,因此会影响到数据交互服务的稳定性。
发明内容
为了解决现有技术的不足,本发明的至少一个实施例提供了一种不稳定网络环境下的数据请求方法,包括:
S1、根据服务器集群中各服务器的权重值比例选取服务器节点,向所述服务器节点发送数据请求;
S2、当超过预设请求时长未收到所述服务器节点返回结果时,将所述服务器节点对应的权重值降低预设值。
基于上述技术方案,本发明实施例还可以做出如下改进。
可选的,所述S1中具体包括:
S11、当用户输入请求数据时,根据所述请求数据确定所述数据请求,并将所述数据请求进行复制得到多份待发请求;
S12、将所述待发请求放置在环形队列中,所述环形队列包括m个循环格,且所述环形队列每秒向上移动一格进行读取,当所述循环格循环m次后将所述环形队列的层数加1,其中m为预设常数;
S13、向所述服务器节点发送数据请求,并运行所述环形队列,当所述环形队列读取到所述待发请求时,判断是否接收到所述服务器节点返回结果;
S14、当接收到所述服务器节点返回结果时,将所述待发请求丢弃;当未接收到所述服务节点返回结果时,向所述服务器节点发送所述待发请求。
可选的,所述S11中具体包括:
将所述数据请求进行复制得到n+1份待发请求;
其中n满足X+y^n<Y,其中,X为预设预警时长,Y为预设请求时长,X小于Y;y为预设常数。
可选的,所述S12中具体包括:
第n+1个所述待发请求在所述环形队列的放置位置由以下公式确定:
CYC=(t+X)/m+1;LOC=(t+X)%m;
其中,CYC为整数,表示所述待发请求放置在所述环形队列的层数;LOC表示所述待发请求放置在所述环形队列的格数,t为所述环形队列的运行时间,且t=X+y^n;
将第n+1个所述待发请求放置在所述环形队列的第CYC层的第LOC格。
可选的,所述S1中根据服务器集群中各服务器的权重值比例选取服务器节点,具体包括:
将所述服务器集群中各服务器的权重值累加得到权重基数,将所述服务器的权重值除以所述权重基数得到所述服务器的选取概率;
根据所述服务器集群中各服务器的选取概率随机选取服务器作为所述服务器节点。
本发明实施例还提供了一种不稳定网络环境下的数据请求***,包括:用户服务器和服务器集群;所述用户服务器包括:连接选取模块、发送模块和存储模块;
所述用户服务器,用于创建数据请求;
所述连接选取模块,用于获取所述存储模块中服务器集群中各服务器的权重值,并根据服务器集群中各服务器的权重值比例选取服务器节点;
所述发送模块,用于向所述服务器节点发送所述数据请求;
所述用户服务器,还用于判断是否超过预设请求时长未收到所述服务器节点返回结果,并在超过预设请求时长未收到所述服务器节点返回结果时,将所述存储模块中存储的所述服务器节点对应的权重值降低预设值。
可选的,所述用户服务器还包括:环形队列;所述环形队列包括m个循环格,且所述环形队列每秒向上移动一格进行读取,当所述循环格循环m次后将所述环形队列的层数加1,其中m为预设常数。
可选的,所述用户服务器还包括:数据请求复制模块,所述数据请求复制模块用于将所述数据请求进行复制得到n+1份待发请求;
其中n满足X+y^n<Y,其中,X为预设预警时长,Y为预设请求时长,X小于Y;y为预设常数。
可选的,所述用户服务器,具体用于将第n+1个所述待发请求放置在所述环形队列的第CYC层的第LOC格;
第n+1个所述待发请求在所述环形队列的放置位置由以下公式确定:
CYC=(t+X)/m+1;LOC=(t+X)%m;
其中,CYC为整数,表示所述待发请求放置在所述环形队列的层数;LOC表示所述待发请求放置在所述环形队列的格数,t为所述环形队列的运行时间,且t=X+y^n。
可选的,所述连接选取模块,具体用于将所述服务器集群中各服务器的权重值累加得到权重基数,将所述服务器的权重值除以所述权重基数得到所述服务器的选取概率;根据所述服务器集群中各服务器的选取概率随机选取服务器作为所述服务器节点。
本发明的上述技术方案与现有技术相比具有如下优点:本发明通过获取服务器集群中各服务器的权重值,根据各服务器的权重值比例选取服务器节点,并连接该服务器节点,并对连接失败的服务器节点相应的权重值进行降低,由此来选取连接成功率高的服务器进行连接,以此来提供数据请求连接的成功率。
附图说明
图1是本发明实施例提供的一种不稳定网络环境下的数据请求方法流程示意图;
图2是本发明另一实施例提供的一种不稳定网络环境下的数据请求方法流程示意图;
图3是本发明又一实施例提供的一种不稳定网络环境下的数据请求方法流程示意图;
图4是本发明又一实施例提供的一种不稳定网络环境下的数据请求***结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明实施例提供的一种不稳定网络环境下的数据请求方法,包括:
S11、当用户输入请求数据时,根据服务器集群中各服务器的权重值比例选取服务器节点,向服务器节点发送数据请求;
S12、当超过预设请求时长未收到服务器节点返回结果时,将服务器节点对应的权重值降低预设值。
上述实施例中,当接收到用户输入的请求数据时,根据服务器集群中各服务器的权重值选取服务器作为服务器节点,向服务器节点发送数据请求,请求服务器节点返回相应数据,当该服务器节点超过预设时长没有反馈结果时,即可判断该服务器节点因网络波动或其他连接原因,未接收到该数据请求所以没有反馈相应的数据,并降低该服务器节点的权重值,以此来降低该服务器节点下次数据请求时的被选中概率。
如图2所示,本发明另一实施例提供的一种不稳定网络环境下的数据请求方法,包括:
S211、当用户输入请求数据时,根据请求数据确定数据请求,并将数据请求进行复制得到多份待发请求;
S212、将待发请求放置在环形队列中,环形队列包括m个循环格,且环形队列每秒向上移动一格进行读取,当循环格循环m次后将环形队列的层数加1,其中m为预设常数;
S213、向服务器节点发送数据请求,并运行环形队列,当环形队列读取到待发请求时,判断是否接收到服务器节点返回结果;
S214、当接收到服务器节点返回结果时,将待发请求丢弃,因为此时服务器节点已返回结果,可以将环形队列停止或将环形队列中的待发请求剔除,避免再次向服务器节点发送待发请求;当未接收到服务节点返回结果时,向服务器节点发送待发请求;
S22、当超过预设请求时长未收到服务器节点返回结果时,将服务器节点对应的权重值降低预设值。
上述实施例中,在向服务器节点发送数据请求时,将数据请求复制多份,并将复制得到的待发请求放置在环形队列中,并运行环形队列,当环形队列逐格读取到待发请求时,判断服务器节点是否反馈数据,若服务器节点反馈数据,则不需要再向服务器节点发送待发请求,若服务器节点未反馈数据,则需要再次向服务器节点发送待发请求,增加服务器节点接收到请求的概率,以此机制达到毫秒级别的重试目的,增加了在网络环境不稳定的情况下命中几率。
在本实施例中,S11中具体包括:
将数据请求进行复制得到n+1份待发请求;
其中n满足X+y^n<Y,其中,X为预设预警时长,Y为预设请求时长,X小于Y;y为预设常数。
在本实施例中,S12中具体包括:
第n+1个待发请求在环形队列的放置位置由以下公式确定:
CYC=(t+X)/m+1;LOC=(t+X)%m;
其中,CYC为整数,表示待发请求放置在环形队列的层数;LOC表示待发请求放置在环形队列的格数,t为环形队列的运行时间,且t=X+y^n;m为环形队列的格数,
将第n+1个待发请求放置在环形队列的第CYC层的第LOC格。
上述实施例中,提供了待发请求在环形队列中的放置策略,环形队列读取到待发请求的时间呈指数增加,在服务器节点的连接网络波动,无法在短时间内恢复时,高频率的向服务器节点发送待发请求,无法得到有效反馈,呈指数增加,可以延长两次待发请求发送的时间间隔,提高待发请求的有效性。
如图3所示,本发明另一实施例提供的一种不稳定网络环境下的数据请求方法,包括:
S311、将服务器集群中各服务器的权重值累加得到权重基数,将服务器的权重值除以权重基数得到服务器的选取概率;
S312、根据服务器集群中各服务器的选取概率随机选取服务器作为服务器节点,向服务器节点发送数据请求;
S32、当超过预设请求时长未收到服务器节点返回结果时,将服务器节点对应的权重值降低预设值。
上述实施例中,根据服务器集群中个服务器的权重值,按权重值的比例选取服务器作为服务器节点,由此权重值越高的服务器被选取的概率越大,在服务器节点未反馈结果时,将该服务器节点的权重值降低,在下次进行数据请求时,该服务器节点的选取概率实时下降,通过上述策略,各个服务器的选取概率趋近于一个定值,服务器节点反馈结果的概率越高,被选取的概率也越高,由此避免重复选取一个服务器作为服务器节点的情况。
如图4所示,本发明实施例还提供了一种不稳定网络环境下的数据请求***结构示意图,包括:用户服务器和服务器集群;用户服务器包括:数据输入模块、连接选取模块、发送模块和存储模块;
数据输入模块,用于接收用户输入的请求数据;
用户服务器,用于根据用户录入的请求数据创建数据请求;
用户服务器还包括:数据请求复制模块,数据请求复制模块用于将数据请求进行复制得到n+1份待发请求;
其中n满足X+y^n<Y,其中,X为预设预警时长,Y为预设请求时长,X小于Y;y为预设常数。
连接选取模块,用于获取存储模块中服务器集群中各服务器的权重值,并根据服务器集群中各服务器的权重值比例选取服务器节点;
具体的,连接选取模块将服务器集群中各服务器的权重值累加得到权重基数,将服务器的权重值除以权重基数得到服务器的选取概率;根据服务器集群中各服务器的选取概率随机选取服务器作为服务器节点。
发送模块,用于向服务器节点发送数据请求;
用户服务器,还用于判断是否超过预设请求时长未收到服务器节点返回结果,并在超过预设请求时长未收到服务器节点返回结果时,将存储模块中存储的服务器节点对应的权重值降低预设值。
用户服务器还包括:环形队列;环形队列包括m个循环格,且环形队列每秒向上移动一格进行读取,当循环格循环m次后将环形队列的层数加1,其中m为预设常数;
用户服务器,具体用于将第n+1个待发请求放置在环形队列的第CYC层的第LOC格;
第n+1个待发请求在环形队列的放置位置由以下公式确定:
CYC=(t+X)/m+1;LOC=(t+X)%m;
其中,CYC为整数,表示待发请求放置在环形队列的层数;LOC表示待发请求放置在环形队列的格数,t为环形队列的运行时间,且t=X+y^n。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (4)
1.一种不稳定网络环境下的数据请求方法,其特征在于,包括:
S1、根据服务器集群中各服务器的权重值比例选取服务器节点,向所述服务器节点发送数据请求;
S2、当超过预设请求时长未收到所述服务器节点返回结果时,将所述服务器节点对应的权重值降低预设值;
所述S1中具体包括:
S11、当用户输入请求数据时,根据所述请求数据确定所述数据请求,并将所述数据请求进行复制得到多份待发请求;
S12、将所述待发请求放置在环形队列中,所述环形队列包括m个循环格,且所述环形队列每秒向上移动一格进行读取,当所述循环格循环m次后将所述环形队列的层数加1,其中m为预设常数;
S13、向所述服务器节点发送数据请求,并运行所述环形队列,当所述环形队列读取到所述待发请求时,判断是否接收到所述服务器节点返回结果;
S14、当接收到所述服务器节点返回结果时,将所述待发请求丢弃;当未接收到所述服务器节点返回结果时,向所述服务器节点发送所述待发请求;
其中,所述S11中具体包括:
将所述数据请求进行复制得到n+1份待发请求;
其中n满足X+y^n<Y,其中,X为预设预警时长,Y为预设请求时长,X小于Y;y为预设常数;
其中,所述S12中具体包括:
第n+1个所述待发请求在所述环形队列的放置位置由以下公式确定:
CYC=(t+X)/m+1;LOC=(t+X)%m;
其中,CYC为整数,表示所述待发请求放置在所述环形队列的层数;LOC表示所述待发请求放置在所述环形队列的格数,t为所述环形队列的运行时间,且t=X+y^n;
将第n+1个所述待发请求放置在所述环形队列的第CYC层的第LOC格。
2.根据权利要求1所述的一种不稳定网络环境下的数据请求方法,其特征在于,所述S1中根据服务器集群中各服务器的权重值比例选取服务器节点,具体包括:
将所述服务器集群中各服务器的权重值累加得到权重基数,将所述服务器的权重值除以所述权重基数得到所述服务器的选取概率;
根据所述服务器集群中各服务器的选取概率随机选取服务器作为所述服务器节点。
3.一种不稳定网络环境下的数据请求***,其特征在于,包括:用户服务器和服务器集群;所述用户服务器包括:连接选取模块、发送模块和存储模块;
所述用户服务器,用于创建数据请求;
所述连接选取模块,用于获取所述存储模块中服务器集群中各服务器的权重值,并根据服务器集群中各服务器的权重值比例选取服务器节点;
所述发送模块,用于向所述服务器节点发送所述数据请求;
所述用户服务器,还用于判断是否超过预设请求时长未收到所述服务器节点返回结果,并在超过预设请求时长未收到所述服务器节点返回结果时,将所述存储模块中存储的所述服务器节点对应的权重值降低预设值;
所述用户服务器还包括:环形队列;所述环形队列包括m个循环格,且所述环形队列每秒向上移动一格进行读取,当所述循环格循环m次后将所述环形队列的层数加1,其中m为预设常数;
所述用户服务器还包括:数据请求复制模块,所述数据请求复制模块用于将所述数据请求进行复制得到n+1份待发请求;
其中n满足X+y^n<Y,其中,X为预设预警时长,Y为预设请求时长,X小于Y;y为预设常数;
所述用户服务器,具体用于将第n+1个所述待发请求放置在所述环形队列的第CYC层的第LOC格;
第n+1个所述待发请求在所述环形队列的放置位置由以下公式确定:
CYC=(t+X)/m+1;LOC=(t+X)%m;
其中,CYC为整数,表示所述待发请求放置在所述环形队列的层数;LOC表示所述待发请求放置在所述环形队列的格数,t为所述环形队列的运行时间,且t=X+y^n。
4.根据权利要求3所述的一种不稳定网络环境下的数据请求***,其特征在于,所述连接选取模块,具体用于将所述服务器集群中各服务器的权重值累加得到权重基数,将所述服务器的权重值除以所述权重基数得到所述服务器的选取概率;根据所述服务器集群中各服务器的选取概率随机选取服务器作为所述服务器节点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711372764.3A CN108111599B (zh) | 2017-12-19 | 2017-12-19 | 一种不稳定网络环境下的数据请求方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711372764.3A CN108111599B (zh) | 2017-12-19 | 2017-12-19 | 一种不稳定网络环境下的数据请求方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108111599A CN108111599A (zh) | 2018-06-01 |
CN108111599B true CN108111599B (zh) | 2021-01-05 |
Family
ID=62211152
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711372764.3A Active CN108111599B (zh) | 2017-12-19 | 2017-12-19 | 一种不稳定网络环境下的数据请求方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108111599B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104767776A (zh) * | 2014-01-07 | 2015-07-08 | 腾讯科技(深圳)有限公司 | 一种实时调整网络路由方法、装置及*** |
WO2017020669A1 (zh) * | 2015-07-31 | 2017-02-09 | 华为技术有限公司 | 分布式***节点身份认证方法及装置 |
CN106936926A (zh) * | 2017-04-18 | 2017-07-07 | 广州华多网络科技有限公司 | 访问数据节点的方法及*** |
CN107169756A (zh) * | 2017-05-10 | 2017-09-15 | 北京凤凰理理它信息技术有限公司 | 支付通道分配方法、装置、存储介质和支付路由*** |
-
2017
- 2017-12-19 CN CN201711372764.3A patent/CN108111599B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104767776A (zh) * | 2014-01-07 | 2015-07-08 | 腾讯科技(深圳)有限公司 | 一种实时调整网络路由方法、装置及*** |
WO2017020669A1 (zh) * | 2015-07-31 | 2017-02-09 | 华为技术有限公司 | 分布式***节点身份认证方法及装置 |
CN106936926A (zh) * | 2017-04-18 | 2017-07-07 | 广州华多网络科技有限公司 | 访问数据节点的方法及*** |
CN107169756A (zh) * | 2017-05-10 | 2017-09-15 | 北京凤凰理理它信息技术有限公司 | 支付通道分配方法、装置、存储介质和支付路由*** |
Also Published As
Publication number | Publication date |
---|---|
CN108111599A (zh) | 2018-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11290381B2 (en) | Method and system for transmitting data resource acquisition request | |
US10404790B2 (en) | HTTP scheduling system and method of content delivery network | |
JP6018182B2 (ja) | カテゴリ情報の送信 | |
CN101136911B (zh) | 一种采用p2p技术下载文件的方法和p2p下载*** | |
CN103179217B (zh) | 一种用于web应用服务器群组的负载均衡方法和装置 | |
WO2023050901A1 (zh) | 一种负载均衡方法、装置、设备、计算机存储介质和程序 | |
JP2010204876A (ja) | 分散システム | |
CN113811013B (zh) | 集群容量动态调节方法、设备、存储介质和通信*** | |
CN107317764B (zh) | 流量负载均衡方法、***、装置和计算机可读存储介质 | |
CN108111599B (zh) | 一种不稳定网络环境下的数据请求方法及*** | |
JP2009122981A (ja) | キャッシュ配置方法 | |
TWI489889B (zh) | 內容遞送網路及同儕網路之流量控制方法及系統 | |
Kawakami et al. | A delivery method considering communication loads for sensor data stream with different collection cycles | |
CN111930710A (zh) | 一种大数据内容分发的方法 | |
CN106790354B (zh) | 一种防数据拥堵的通信方法及其装置 | |
CN105634932B (zh) | 一种消息推送方法、装置、***和计算机可读存储介质 | |
US20120137017A1 (en) | System and method for controlling server usage in peer-to-peer (p2p) based streaming service | |
CN112468310A (zh) | 流媒体集群节点管理方法、装置及存储介质 | |
US9071954B2 (en) | Wireless optimized content delivery network | |
CN110636104B (zh) | 一种资源请求方法、电子设备及存储介质 | |
EP3190559A3 (en) | Push-pull based content delivery system | |
CN113396573B (zh) | 计算服务的迁移 | |
Kumar et al. | BMAQR: balanced multi attribute QoS aware replication in HDFS | |
CN114500663B (zh) | 内容分发网络设备的调度方法、装置、设备及存储介质 | |
Rong et al. | BitTorrent in a dynamic resource adapting peer-to-peer network |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |