CN117411933A - 一种服务数据推送方法及系统 - Google Patents
一种服务数据推送方法及系统 Download PDFInfo
- Publication number
- CN117411933A CN117411933A CN202311334292.8A CN202311334292A CN117411933A CN 117411933 A CN117411933 A CN 117411933A CN 202311334292 A CN202311334292 A CN 202311334292A CN 117411933 A CN117411933 A CN 117411933A
- Authority
- CN
- China
- Prior art keywords
- service
- time window
- data
- gateway
- client
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 32
- 230000004044 response Effects 0.000 claims abstract description 12
- 230000005540 biological transmission Effects 0.000 claims description 5
- 230000009977 dual effect Effects 0.000 claims description 3
- 230000008569 process Effects 0.000 abstract description 8
- 230000002035 prolonged effect Effects 0.000 abstract description 3
- 238000004590 computer program Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 7
- 238000004519 manufacturing process Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
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/50—Network services
- H04L67/55—Push-based network services
-
- 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/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
- H04L67/62—Establishing a time schedule for servicing the requests
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种服务数据推送方法,接收服务端推送的服务数据;接收客户端的服务请求;建立以接收到服务请求的时间为起始的服务时间窗口,在服务时间窗口存续期间,向客户端转发对所述服务请求的响应信息,响应信息包括服务数据;在服务时间窗口结束时,若接收到服务端推送的服务数据,将服务时间窗口延长至本次转发结束。设置服务时间窗口,并根据推送进程实时更新,在服务数据推送的时间段内,对服务推送进行管理,并主动转发服务数据至客户端,网关在收到服务端推送数据至客户端后,自动延长本次会话的生存期,保证完成本次服务推送,避免了客户端不断请求服务造成的网络负荷,提升系统推送效率。
Description
技术领域
本发明涉及云原生网络技术,具体是涉及一种服务数据推送方法及系统。
背景技术
在云原生系统中,微服务技术以其架构清晰、实现简单、运行可靠的特点得到广泛应用,微服务架构包括服务注册、服务发布、服务调用等主要模块,微服务的服务模型是一种请求回复模型,即服务客户端主动向服务提供方发起服务请求,服务提供方收到服务请求后将相应数据发往客户端。该方式是一种服务端轻量化设计,服务提供方只在有请求时响应请求,优点是平时工作负载压力较轻,而缺点是客户端无法及时感知服务端数据变化。
传统B/S架构的服务推送一般采用轮询(polling)方式实现,轮询周期是一个难以确定的参数。周期太短,服务端会收到大量的客户端请求,但自身数据可能并无变更,势必会造成很多冗余数据,对服务端和网络造成很大压力,浪费服务器和带宽资源;周期太长,又会导致客户端无法及时感知服务端数据的变化,造成客户端关键数据丢失。
此外,在电力系统等对网络安全传输有严格要求的生产系统中,网络传输被限定只能使用TCP方式,HTTP及基于HTTP协议(如websocket协议)被禁止使用,这些要求限制了微服务技术在这些领域的应用,也制约了领域应用技术的发展。
发明内容
发明目的:针对以上缺点,本发明提供一种提升系统推送效率的服务数据推送方法及系统。
技术方案:为解决上述问题,本发明采用一种服务数据推送方法,包括以下步骤:
接收服务端推送的服务数据;
接收客户端的服务请求;
建立以接收到服务请求的时间为起始的服务时间窗口,在服务时间窗口存续期间,向客户端转发对所述服务请求的响应信息,所述响应信息包括服务数据;在服务时间窗口结束时,若接收到服务端推送的服务数据,将自动延长服务时间窗口至本次转发结束。
进一步的,在服务时间窗口存续期间,接收到客户端新的服务请求时,刷新服务时间窗口。
在电力领域,为保证安全生产,会禁止HTTP协议及基于HTTP的其它协议在系统中使用。采用TCP协议进行数据传输,满足电力交易及电力调控生产支持系统对微服务技术的应用需求。
本发明还采用一种基于智能服务网关的服务数据推送方法,包括以下步骤:客户端向智能服务网关发送服务请求;智能服务网关将服务请求转发至服务端;同时建立服务时间窗口;服务端接收服务请求,并依据服务请求向智能服务网关推送服务数据;当接收到智能服务网关发出的取消推送指令后,不再推送服务数据;在服务时间窗口存续期间,智能服务网关接收服务端推送的服务数据转发至客户端,若在服务时间窗口结束时,接收到服务端推送的服务数据,将自动延长服务窗口时间至本次转发结束;否则智能服务网关向服务端发出取消推送指令。
进一步的,在服务时间窗口存续期间,智能服务网关接收客户端新的服务请求时,智能服务网关将新的服务请求转发至服务端;同时刷新服务时间窗口。
进一步的,采用双活的智能服务网关。服务端、智能服务网关将各自提供服务的IP、心跳、元数据在注册中心完成注册。智能服务网关到服务注册中心后,作为网关服务与后端数据服务共同实现负载均衡和网关双活,提高运行可靠性。后端数据服务通过服务注册中心,实时感知网关的服务状态,按负载均衡策略向网关推送数据。网关根据缓存共享相互间状态实现双活。服务端向智能服务网关推送服务数据时,根据推送至智能服务网关的负载均衡策略决定推送的智能服务网关。
服务注册中心是微服务架构中对服务的位置信息、心跳信息、元数据信息进行管理的重要基础设施,系统的智能网关、服务端首先在服务注册中心完成所有微服务实例的注册,以便后续客户端进行服务调用。
本发明还采用一种服务数据推送系统,包括:
数据接收模块,用于接收服务端推送的服务数据;
请求接收模块,用于接收客户端的服务请求;
推送模块,用于建立以接收到服务请求的时间为起始的服务时间窗口,在服务时间窗口存续期间,向客户端转发对所述服务请求的响应信息,所述响应信息包括服务数据;若在服务时间窗口结束时,接收到服务端推送的服务数据,将自动延长服务时间窗口至本次转发结束。
本发明还采用一种服务数据推送系统,包括服务端、智能服务网关、客户端;客户端用于发送服务请求和接收服务数据;服务端用于接收服务请求,并依据服务请求推送服务数据;当接收到取消推送指令后,不再推送服务数据;
智能服务网关用于将服务请求转发至服务端,将服务数据转发至客户端,在将服务请求转发至服务端的同时建立服务时间窗口,在服务时间窗口存续期间,接收服务端推送的服务数据转发至客户端,若服务时间窗口结束时,接收到服务端推送的服务数据,将自动延长服务时间窗口至本次转发结束;否则向服务端发出取消推送指令。
有益效果:本发明相对于现有技术,其显著优点是设置服务时间窗口,并根据推送进程实时更新,在服务数据推送的时间段内,对服务推送进行管理,并主动转发服务数据至客户端,避免了客户端不断请求服务造成的网络负荷,提升系统推送效率。
采用双活的智能网关进行服务数据推送进程的配置和管理,可保证网关运行的可靠性,提高推送并发效率,为服务推送的通信性能稳定提供基础保障。
采用TCP协议进行客户端、网关、服务端的相互通信,满足了那些禁止使用HTTP协议的系统对微服务技术的应用需求。微服务架构在电力领域的应用,有利于提升电力生产技术支持系统的数字化水平和可靠性,有利于降低软件系统升级维护的难度和复杂性。
附图说明
图1为本发明服务数据推送方法实现流程示意图。
图2为本发明服务数据推送会话有效性判断流程图。
图3为本发明服务数据推送系统结构框图。
具体实施方式
实施例1
如图1和图2所示,本实施例中一种服务数据推送方法,基于智能网关及TCP通信协议,主要用于电力领域具备前后端系统的数字化电网运行技术支持系统的服务推送功能。包括以下步骤:
S1、系统服务注册。服务端、智能服务网关将各自提供服务的IP、心跳、元数据等信息在注册中心完成注册,以便后续开展服务调用和推送;
S2、客户端服务请求。当网关、服务端的服务在注册中心注册完成后,首先由客户端通过前端向智能网关发出服务请求,等待相应的服务推送。
S3、网关启动会话管理。智能服务网关接收客户端服务请求后,开启该请求的会话管理进程并将服务请求转发至服务端。智能网关为客户端请求打开一个会话,然后转发请求信息给服务端,同时记录会话开始时间,并按配置设定会话进程的延续时间长度,建立主动推送的服务时间窗口。智能网关具有服务推送时间间隔(服务时间窗口)设置功能,可实现时间间隔设置和调整。
S4、服务推送时间窗口存续期间,服务端接收服务请求,并依据服务请求情况推送服务数据。服务端接收到智能服务网关发来的服务请求,服务端的后端服务通过会话向客户端前端推送服务数据,根据推送至智能服务网关的负载均衡策略决定推送到哪个网关。同时,当接收到智能服务网关发出的取消推送指令后,不再推送数据到智能服务网关。
S5、服务数据主动推送。完成服务主动推送时间段设置后,只要有新数据就会被推送给客户端,直到会话窗口关闭,服务推送才被取消;智能服务网关在收到服务端推送数据至客户端后,自动延长本次会话的生存期,保证完成本次服务推送。在有效推送时间内,客户端无需多次发送请求就能不断获取推送的服务数据,有利于减轻服务端压力,避免网络阻塞,提高跟踪、响应速度。另外,若客户端在有效时间内发出新请求,网关将自动刷新服务时间窗口,延长一个推送时间间隔,从而延长服务主动推送的时间;若客户端在有效时间结束后无新请求产生,网关将取消本次服务推送进程,节约通道资源。
采用本示例的服务端请求触发服务数据主动推送方法,大幅减少了客户端请求的频度,可有效降低服务端压力,避免网络阻塞。同时网关自动侦测服务数据变化、主动推送服务的方法,可使服务信息得到及时推送,有效提升系统的请求响应速度。
实施例2
如图3所示,本实施例中一种服务数据推送系统,包括客户端、服务端、智能网关和服务注册中心;在客户端和服务端间增加智能网关,实现一种服务推送过程由智能网关管控的服务端数据主动推送。
客户端发起一次推送服务请求,经智能网关发给服务端,同时智能网关会记录客户端的推送请求时间,服务端收到推送请求后,会一直将服务端的服务数据经智能网关推送到相应的客户端。在后续的推送过程中,智能网关会根据设定的推送时间周期(服务时间窗口),开启一次会话管理任务,判断服务推送时间是否超时,一旦超时,会通知服务端取消数据推送。
智能服务网关在收到服务端推送数据至客户端后,自动延长本次会话的生存期,保证完成本次服务推送。另外,若客户端在有效时间内发出新请求,网关将自动刷新服务时间窗口,延长一个推送时间间隔,从而延长服务主动推送的时间。
智能网关注册到服务注册中心后,作为网关服务与后端数据服务共同实现负载均衡和网关双活,提高运行可靠性。后端数据服务通过服务注册中心,实时感知网关的服务状态,按负载均衡策略向网关推送数据。网关根据缓存共享相互间状态实现双活。
在电力领域,为保证安全生产,会禁止HTTP协议及基于HTTP的其它协议在系统中使用。为此采用TCP协议进行数据传输,满足电力交易及电力调控生产支持系统对微服务技术的应用需求。
服务注册中心是微服务架构中对服务的位置信息、心跳信息、元数据信息进行管理的重要基础设施,系统的智能网关、服务端首先在服务注册中心完成所有微服务实例的注册,以便后续客户端进行服务调用。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。
Claims (10)
1.一种服务数据推送方法,其特征在于,包括以下步骤:
接收服务端推送的服务数据;
接收客户端的服务请求;
建立以接收到服务请求的时间为起始的服务时间窗口,在服务时间窗口存续期间,向客户端转发对所述服务请求的响应信息,所述响应信息包括服务数据;
在服务时间窗口结束时,若接收到服务端推送的服务数据,将自动延长服务时间窗口至本次转发结束。
2.根据权利要求1所述的服务数据推送方法,其特征在于,在服务时间窗口存续期间,接收到客户端新的服务请求时,刷新服务时间窗口。
3.根据权利要求1所述的服务数据推送方法,其特征在于,采用TCP协议进行数据传输。
4.一种基于智能服务网关的服务数据推送方法,其特征在于,包括以下步骤:
客户端向智能服务网关发送服务请求;
智能服务网关将服务请求转发至服务端;同时建立服务时间窗口;
服务端接收服务请求,并依据服务请求向智能服务网关推送服务数据;当接收到智能服务网关发出的取消推送指令后,不再推送服务数据;
在服务时间窗口存续期间,智能服务网关接收服务端推送的服务数据转发至客户端;若在服务时间窗口结束时,接收到服务端推送的服务数据,将自动延长服务时间窗口至本次转发结束;否则智能服务网关向服务端发出取消推送指令。
5.根据权利要求4所述的服务数据推送方法,其特征在于,在服务时间窗口存续期间,智能服务网关接收客户端新的服务请求时,智能服务网关将新的服务请求转发至服务端;同时刷新服务时间窗口。
6.根据权利要求4所述的服务数据推送方法,其特征在于,还包括服务端、智能服务网关将各自提供服务的IP、心跳、元数据在注册中心完成注册。
7.根据权利要求4所述的服务数据推送方法,其特征在于,采用双活的智能服务网关。
8.根据权利要求7所述的服务数据推送方法,其特征在于,服务端向智能服务网关推送服务数据时,根据推送至智能服务网关的负载均衡策略决定推送的智能服务网关。
9.一种服务数据推送系统,其特征在于,包括:
数据接收模块,用于接收服务端推送的服务数据;
请求接收模块,用于接收客户端的服务请求;
推送模块,用于建立以接收到服务请求的时间为起始的服务时间窗口,在服务时间窗口存续期间,向客户端转发对所述服务请求的响应信息,所述响应信息包括服务数据;在服务时间窗口结束时,若接收到服务端推送的服务数据,将自动延长服务时间窗口至本次转发结束。
10.一种服务数据推送系统,其特征在于,包括服务端、智能服务网关、客户端;
客户端用于发送服务请求和接收服务数据,
服务端用于接收服务请求,并依据服务请求推送服务数据;当接收到取消推送指令后,不再推送服务数据;
智能服务网关用于将服务请求转发至服务端,将服务数据转发至客户端,在将服务请求转发至服务端的同时建立服务时间窗口,在服务时间窗口存续期间,接收服务端推送的服务数据转发至客户端,若服务时间窗口结束时,接收到服务端推送的服务数据,将自动延长服务时间窗口至本次转发结束;否则向服务端发出取消推送指令。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311334292.8A CN117411933B (zh) | 2023-10-16 | 2023-10-16 | 一种服务数据推送方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311334292.8A CN117411933B (zh) | 2023-10-16 | 2023-10-16 | 一种服务数据推送方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117411933A true CN117411933A (zh) | 2024-01-16 |
CN117411933B CN117411933B (zh) | 2024-05-24 |
Family
ID=89491867
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311334292.8A Active CN117411933B (zh) | 2023-10-16 | 2023-10-16 | 一种服务数据推送方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117411933B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090158397A1 (en) * | 2007-12-17 | 2009-06-18 | Microsoft Corporation | Secure Push and Status Communication between Client and Server |
CN103780603A (zh) * | 2013-12-31 | 2014-05-07 | 电子科技大学 | 应用内轻量级推送方法 |
WO2015056833A1 (en) * | 2013-10-14 | 2015-04-23 | Kyungpook National University Industry-Academic Cooperation Foundation | Web-based real time data pushing method and system thereof |
CN108965442A (zh) * | 2018-07-23 | 2018-12-07 | 珠海宏桥高科技有限公司 | 一种微服务架构服务分发系统及模式优化方法 |
CN115174592A (zh) * | 2022-06-28 | 2022-10-11 | 北京软通智慧科技有限公司 | 企业级数据请求转发系统及方法 |
-
2023
- 2023-10-16 CN CN202311334292.8A patent/CN117411933B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090158397A1 (en) * | 2007-12-17 | 2009-06-18 | Microsoft Corporation | Secure Push and Status Communication between Client and Server |
WO2015056833A1 (en) * | 2013-10-14 | 2015-04-23 | Kyungpook National University Industry-Academic Cooperation Foundation | Web-based real time data pushing method and system thereof |
CN103780603A (zh) * | 2013-12-31 | 2014-05-07 | 电子科技大学 | 应用内轻量级推送方法 |
CN108965442A (zh) * | 2018-07-23 | 2018-12-07 | 珠海宏桥高科技有限公司 | 一种微服务架构服务分发系统及模式优化方法 |
CN115174592A (zh) * | 2022-06-28 | 2022-10-11 | 北京软通智慧科技有限公司 | 企业级数据请求转发系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN117411933B (zh) | 2024-05-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103870570B (zh) | 一种基于远程日志备份的 HBase 数据可用性及持久性的方法 | |
CN105960629B (zh) | 在can网络中自动选择波特率的系统和方法 | |
CN103312549B (zh) | 一种事务管理方法及装置和系统 | |
CN109905409A (zh) | 基于Socket.IO的物联网网关实时双向通信系统 | |
US20160219083A1 (en) | Resource management for webrtc | |
CN107517227B (zh) | 用于分布式一致性系统的会话实现方法以及装置 | |
CN105554142B (zh) | 消息推送的方法、装置及系统 | |
US11146946B2 (en) | Presence server message handling | |
CN111083177A (zh) | 基于协同网关的跨域协同交互方法 | |
CN114185582A (zh) | 基于quic协议的汽车软件在线升级系统及方法 | |
CN117714532A (zh) | 一种基于Timeline模型的数据信息推送方法、网关及相关设备 | |
CN107872492B (zh) | 一种在服务端支持多用户编辑数据对象的方法和装置 | |
CN109947081B (zh) | 网联车辆控制方法及装置 | |
US9491268B2 (en) | Method and devices for session timeout management | |
KR20210129148A (ko) | 비디오 수신을 제어하기 위한 방법 및 디바이스 | |
CN114338769A (zh) | 访问请求的处理方法及装置 | |
CN111953655A (zh) | 一种通信系统中服务器响应请求消息的方法及设备 | |
CN117411933B (zh) | 一种服务数据推送方法及系统 | |
US10268532B2 (en) | Application message processing system, method, and application device | |
US9288277B2 (en) | Communication device, method for communication and relay system | |
CN107918877B (zh) | 数据获取方法及装置 | |
EP3403388B1 (en) | Synchronized connection closing | |
CN115378989B (zh) | 基于唤醒通道的mqtt主题订阅系统、方法、终端及介质 | |
CN109040286B (zh) | 一种基于内存数据库的客户端在线状态维护方法 | |
CN103685497A (zh) | 一种在线存储共享方法和系统 |
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 |