CN104182206A - 一种数据转发方法 - Google Patents
一种数据转发方法 Download PDFInfo
- 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
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时,利用所创建的主转发线程进行所到达数据的转发。
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)
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)
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 | 南威软件股份有限公司 | 一种定时数据增量同步的方法 |
-
2014
- 2014-08-28 CN CN201410432129.XA patent/CN104182206A/zh active Pending
Patent Citations (3)
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)
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 | |
CN104901989B (zh) | 一种现场服务提供系统及方法 | |
CN103312528B (zh) | 一种心跳消息发送方法及用户终端 | |
CN105763619B (zh) | 客户端与服务端进行通讯的方法及装置 | |
WO2017067327A1 (zh) | 多个智能设备与服务器设备的长连接方法及智能设备 | |
JP2016527757A5 (zh) | ||
JP2016536860A5 (zh) | ||
CN103401946B (zh) | Http上传加速方法和系统 | |
TW200943804A (en) | Requested transmission of interference management messages | |
CN103096271A (zh) | 信息推送系统和信息推送方法 | |
WO2016095574A1 (zh) | 一种基于sdn的mpls网络控制系统及方法 | |
CN103780681A (zh) | 一种高实时性Web应用系统及其数据实时推送方法 | |
TW200943861A (en) | Interference management messaging involving termination of a request for reduction in interference | |
CN103546363A (zh) | 一种即时通信消息推送方法、装置及系统 | |
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) | 一种数据转发方法 | |
WO2016123928A1 (zh) | 发送处理方法及装置 | |
CN108462650B (zh) | 一种基于tte交换机的输出单元 | |
CN109922012A (zh) | 一种传输数据的方法以及相关设备 | |
CN104348713A (zh) | B/S架构下网络平台基于comet的即时通讯方法 | |
CN104506642A (zh) | 一种客户端消息高效的收发和处理方法及系统 | |
CN105610711B (zh) | 一种动态优化数据传输的装置及方法 | |
CN104426746A (zh) | 客户端消息的推送方法、装置和服务器 | |
KR102416176B1 (ko) | 슬레이브 디바이스 제어 방법 |
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 |