CN104182206A - 一种数据转发方法 - Google Patents

一种数据转发方法 Download PDF

Info

Publication number
CN104182206A
CN104182206A CN201410432129.XA CN201410432129A CN104182206A CN 104182206 A CN104182206 A CN 104182206A CN 201410432129 A CN201410432129 A CN 201410432129A CN 104182206 A CN104182206 A CN 104182206A
Authority
CN
China
Prior art keywords
forwarding
data
thread
send request
passes
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.)
Pending
Application number
CN201410432129.XA
Other languages
English (en)
Inventor
雒根雄
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Jingdong Shangke Information Technology Co Ltd
Original Assignee
Beijing Jingdong Shangke Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Jingdong Shangke Information Technology Co Ltd filed Critical Beijing Jingdong Shangke Information Technology Co Ltd
Priority to CN201410432129.XA priority Critical patent/CN104182206A/zh
Publication of CN104182206A publication Critical patent/CN104182206A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请公开了一种数据转发方法,包括:转发***根据当前用户请求发送数据的数据量估计值,为本次发送请求配置相应的转发线程数;当所述数据到达所述转发***时,所述转发***确定当前是否已为所述数据对应的所述发送请求创建相应的转发线程,如果是,则利用为所述发送请求创建的转发线程进行所到达数据的转发;否则,根据为所述数据对应的所述发送请求配置的所述转发线程数,为所述数据对应的所述发送请求创建相应数量的转发线程,并利用所创建的转发线程进行所到达数据的转发。采用本发明,可以确保所创建的转发线程能够满足数据转发的实时性要求,同时,可以避免转发资源的浪费。

Description

一种数据转发方法
技术领域
本发明涉及大数据分析技术,特别是涉及一种数据转发方法。
背景技术
在目前的数据转发方案中,通过数据转发***将各个服务器上的数据(比如日志数据)转发到各个目的***时,为了使各种数据最终不混乱,数据转发***对各种数据分别使用一个线程进行转发。这样,当需要转发的数据量比较大时,一个线程转发会过慢,会影响数据转发的实时性。
针对上述问题,目前提出了一种解决方案,该方案中预先对各种数据类型的数据量做综合评估,根据该评估结果选择一个恰当的固定的数据类型转发线程个数A,每种数据类型都使用A个转发线程进行数据转发。
上述解决方案中由于对所有数据类型配置一个固定的转发线程个数A,而存在下述问题:
(1)转发线程数A难以评估,如果A过大,数据量小的数据类型会浪费大量的线程资源;如果A太小,难以保证数据量大的数据类型数据的实时性;
(2)***运行后,新增数据类型不能参与A的评估,造成新增数据转发问题。
由此可见,现有的转发方案存在转发资源浪费或无法确保数据转发实时性的问题。
发明内容
有鉴于此,本发明的主要目的在于提供一种数据转发方法,该方法可确保数据转发的实时性,同时可以避免转发资源的浪费。
为了达到上述目的,本发明提出的技术方案为:
一种数据转发方法,包括:
转发***根据当前用户请求发送数据的数据量估计值,为本次发送请求配置相应的转发线程数;
当所述数据到达所述转发***时,所述转发***确定当前是否已为所述数据对应的所述发送请求创建相应的转发线程,如果是,则利用为所述发送请求创建的转发线程进行所到达数据的转发;否则,根据为所述数据对应的所述发送请求配置的所述转发线程数,为所述数据对应的所述发送请求创建相应数量的转发线程,并利用所创建的转发线程进行所到达数据的转发。
综上所述,本发明提出的数据转发方法,根据用户请求发送数据的数据量估计值,为该请求配置相应的转发线程数,然后在所请求发送的数据首次到达时,为其配置相应数量的转发线程,使得数据发送时所使用的线程数与实际传输量相匹配。这种动态的调整每次发送请求所需的转发线程数的方式,可以确保所创建的转发线程能够满足数据转发的实时性要求,同时,可以避免转发资源的浪费。
附图说明
图1为本发明实施例一的流程示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图及具体实施例对本发明作进一步地详细描述。
本发明的核心思想是:对于每种请求转发的数据,根据其需要转发的数据估计量,确定所需要使用的转发线程数。这样,对于数据量大的数据转发请求,可以配置较多的转发线程,从而可以确保其转发的实时性,对于数据量小的数据转发请求,则可以配置较少的转发线程,从而可以避免转发进程的浪费。
图1为本发明实施例一的流程示意图,如图1所示,该实施例主要包括:
步骤101、转发***根据当前用户请求发送数据的数据量估计值,为本次发送请求配置相应的转发线程数。
本步骤用于在收到用户的数据发送请求时,根据数据量估计值为其配置相匹配的转发线程数。这样,可以确保在本次请求发送的数据实际到达转发***时,为其配置合适数量的转发线程,从而可以有效避免转发线程数量过多时造成的资源浪费问题,以及转发线程数量过少时造成的转发时延过长的问题。
在实际应用中,所述数据量估计值为所述用户请求发送数据时通知给所述转发***的。
具体的,根据数据量估计值配置相匹配的转发线程数,可以按照转发线程数=数据量/进程的数据传输率计算得到,在此不再赘述。
步骤102、当所述数据到达所述转发***时,所述转发***确定当前是否已为所述数据对应的所述发送请求创建相应的转发线程,如果是,则利用为所述发送请求创建的转发线程进行所到达数据的转发;否则,根据为所述数据对应的所述发送请求配置的所述转发线程数,为所述数据对应的所述发送请求创建相应数量的转发线程,并利用所创建的转发线程进行所到达数据的转发。
在实际应用中,用户请求发送的数据可能会因数据量较大需要分成若干部分发送给转发***。当首次对所请求的数据进行转发时,需要转发***先为其创建相应的转发线程,以进行数据的转发,此后其他部分数据到达时,只需要利用首次转发时已创建好的转发线程进行转发即可。
本步骤中,由于转发线程数量是预先根据用户实际传输数据的估计量确定的,因此,可以有效避免转发线程浪费或无法满足用户传输实时性的问题。
较佳地,为了使本发明易于实现,本步骤中如果当前没有为所到达数据对应的所述发送请求创建转发线程,可以采用下述方法进行转发线程的创建和数据的转发:
所述转发***为所述数据对应的所述发送请求创建一个主转发线程;
当为所述数据对应的所述发送请求配置的所述转发线程数大于1时,由所述主转发线程创建次级转发线程,所述次级转发线程的数量为所述转发***为所述数据对应的所述发送请求配置的所述转发线程数;利用所创建的次级转发线程进行所到达数据的转发;
当为所述数据对应的所述发送请求配置的所述转发线程数等于1时,利用所创建的主转发线程进行所到达数据的转发。
上述方法中,在为一发送请求创建转发线程时,先创建一个主转发线程,如果该发送请求只需要配置一个转发线程,则直接利用该主转发线程进行相应数据的转发即可,即该主转发线程为用于数据转发的线程,如果该发送请求需要配置多个转发线程,则需要由该主转发线程创建用于数据转发的次级转发线程,即主转发线程用于次级转发线程的创建,数据的具体转发由次级转发线程完成。如此,可以确保转发***对外提供统一的转发接口,减弱转发***的耦合性,使得本发明更易于实现。
通过上述实施例可以看出,本发明根据各发送请求的实际数据传输量估计值,动态地配置转发线程个数,可以很好地保证数据转发的实时性,同时可以保证资源的不浪费。
综上所述,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (3)

1.一种数据转发方法,其特征在于,所述方法包括:
转发***根据当前用户请求发送数据的数据量估计值,为本次发送请求配置相应的转发线程数;
当所述数据到达所述转发***时,所述转发***确定当前是否已为所述数据对应的所述发送请求创建相应的转发线程,如果是,则利用为所述发送请求创建的转发线程进行所到达数据的转发;否则,根据为所述数据对应的所述发送请求配置的所述转发线程数,为所述数据对应的所述发送请求创建相应数量的转发线程,并利用所创建的转发线程进行所到达数据的转发。
2.根据权利要求1所述的方法,其特征在于,所述数据量估计值为所述用户请求发送数据时通知给所述转发***的。
3.根据权利要求1所述的方法,其特征在于,所述根据为所述数据对应的所述发送请求配置的所述转发线程数,为所述数据对应的所述发送请求创建相应数量的转发线程,并利用所创建的转发线程进行所到达数据的转发包括:
所述转发***为所述数据对应的所述发送请求创建一个主转发线程;
当为所述数据对应的所述发送请求配置的所述转发线程数大于1时,由所述主转发线程创建次级转发线程,所述次级转发线程的数量为所述转发***为所述数据对应的所述发送请求配置的所述转发线程数;利用所创建的次级转发线程进行所到达数据的转发;
当为所述数据对应的所述发送请求配置的所述转发线程数等于1时,利用所创建的主转发线程进行所到达数据的转发。
CN201410432129.XA 2014-08-28 2014-08-28 一种数据转发方法 Pending CN104182206A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410432129.XA CN104182206A (zh) 2014-08-28 2014-08-28 一种数据转发方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410432129.XA CN104182206A (zh) 2014-08-28 2014-08-28 一种数据转发方法

Publications (1)

Publication Number Publication Date
CN104182206A true CN104182206A (zh) 2014-12-03

Family

ID=51963288

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410432129.XA Pending CN104182206A (zh) 2014-08-28 2014-08-28 一种数据转发方法

Country Status (1)

Country Link
CN (1) CN104182206A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109492024A (zh) * 2018-10-26 2019-03-19 平安科技(深圳)有限公司 数据处理方法、装置、计算机设备以及存储介质
CN114745272A (zh) * 2020-12-23 2022-07-12 武汉斗鱼网络科技有限公司 用于提高应用程序启动速度的方法、服务器、介质及设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7441086B2 (en) * 2005-07-25 2008-10-21 Industrial Technology Research Institute Data caching method and computer-readable medium storing a program executing the method
CN102164174A (zh) * 2011-03-09 2011-08-24 南京恩瑞特实业有限公司 大容量数据的内存转发方法
CN103955491A (zh) * 2014-04-15 2014-07-30 南威软件股份有限公司 一种定时数据增量同步的方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7441086B2 (en) * 2005-07-25 2008-10-21 Industrial Technology Research Institute Data caching method and computer-readable medium storing a program executing the method
CN102164174A (zh) * 2011-03-09 2011-08-24 南京恩瑞特实业有限公司 大容量数据的内存转发方法
CN103955491A (zh) * 2014-04-15 2014-07-30 南威软件股份有限公司 一种定时数据增量同步的方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109492024A (zh) * 2018-10-26 2019-03-19 平安科技(深圳)有限公司 数据处理方法、装置、计算机设备以及存储介质
CN114745272A (zh) * 2020-12-23 2022-07-12 武汉斗鱼网络科技有限公司 用于提高应用程序启动速度的方法、服务器、介质及设备
CN114745272B (zh) * 2020-12-23 2023-09-15 武汉斗鱼网络科技有限公司 用于提高应用程序启动速度的方法、服务器、介质及设备

Similar Documents

Publication Publication Date Title
US11647099B2 (en) Method and apparatus for transmitting data in IoT system, and gateway device and storage medium thereof
CN103312528B (zh) 一种心跳消息发送方法及用户终端
CN102377685B (zh) 一种订阅消息的发送***以及订阅消息的发送方法
CN105763619B (zh) 客户端与服务端进行通讯的方法及装置
WO2017067327A1 (zh) 多个智能设备与服务器设备的长连接方法及智能设备
JP2016527757A5 (zh)
JP2016536860A5 (zh)
TW200943804A (en) Requested transmission of interference management messages
CN103096271A (zh) 信息推送***和信息推送方法
CN104539510B (zh) 一种基于多协议的信息推送***及方法
WO2016095574A1 (zh) 一种基于sdn的mpls网络控制***及方法
CN104518973A (zh) 一种基于sdn环境的数据的可靠组播传输方法
CN103780681A (zh) 一种高实时性Web应用***及其数据实时推送方法
US20180262560A1 (en) Method and system for transmitting communication data
TW200943861A (en) Interference management messaging involving termination of a request for reduction in interference
US20140119363A1 (en) Waved Time Multiplexing
CN103546363A (zh) 一种即时通信消息推送方法、装置及***
CN202617155U (zh) 多主机rs485通信装置
US11700189B2 (en) Method for performing task processing on common service entity, common service entity, apparatus and medium for task processing
TWI600335B (zh) Communication system and communication method
CN104182206A (zh) 一种数据转发方法
CN103037000A (zh) 一种发布订阅***及其通知消息处理方法
CN104320322B (zh) 一种报文控制方法和设备
CN108462650B (zh) 一种基于tte交换机的输出单元
CN104348713A (zh) B/S架构下网络平台基于comet的即时通讯方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20141203