CN102333128B - 一种Web实时数据主动推送方法 - Google Patents
一种Web实时数据主动推送方法 Download PDFInfo
- Publication number
- CN102333128B CN102333128B CN201110336281.4A CN201110336281A CN102333128B CN 102333128 B CN102333128 B CN 102333128B CN 201110336281 A CN201110336281 A CN 201110336281A CN 102333128 B CN102333128 B CN 102333128B
- Authority
- CN
- China
- Prior art keywords
- server
- flex control
- data
- browser
- upgrade
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种Web实时数据主动推送方法,采用在客户端浏览器上加载Flex控件从而在B/S系统中使得浏览器与服务器建立Socket连接,这样就可以利用Flex控件作为中间层来连接客户端浏览器上的Web页面和服务器端进行Socket通信,客户端浏览器上的Flex控件与服务器可以相互发送数据,互相控制和调用,从而实现服务器主动推送更新数据的目的。当服务器数据发生更新时可实时将最新数据通过Socket推送到客户端浏览器Flex控件,加强了客户端浏览器数据的实时性,减少了服务器和网络的压力。
Description
技术领域
本发明涉及一种Web实时数据推送方法,尤其涉及一种用在电力计量业务生产调度平台中的Web实时数据主动推送方法。
背景技术
目前, 在电力计量业务生产调度平台中,需要在客户端浏览器中监测设备的工作状态及相关数据,且由于工作的重要性,这些数据要求实时展现。在这种情况下,采用传统的浏览器定时请求的模式就不符合要求了。一个典型的服务器与客户端浏览器之间的交互如下所示:
(1)、客户端浏览器提出一个请求;
(2)、服务器收到客户端浏览器的请求,进行分析处理;
(3)、服务器将运行处理的结果返回给客户端浏览器。
通常一个服务器需要向多个客户端提供服务,因此对服务器来说,还需要考虑如何有效地处理多个客户端的请求。
B/S系统(浏览器和服务器结构)一般采用HTTP协议,服务器端的数据发生更新时不会主动发送到客户端的浏览器,需要客户端主动地去请求才能获得新数据。通常的解决方案是客户端浏览器定时向服务器发送请求来进行更新,但是这种方式可能会造成一定的时间误差。在电力计量业务生产调度平台中,设备将其状态信息实时发送到服务器上,服务器收到客户端浏览器的定时请求后将获得的设备状态信息发送到浏览器上,由于电力计量业务生产调度平台中的实时性要求较高,因此这种方法不合适。另外,服务器没有数据更新时客户端浏览器仍然会发出获取数据的请求,这样就加重了服务器和网络传输的负担。
发明内容
本发明的目的是提供一种用在电力计量业务生产调度平台中使用的Web实时数据主动推送方法,服务器的数据更新可主动推送到浏览器,能够加强客户端浏览器数据的实时性。
本发明采用下述技术方案:一种Web实时数据主动推送方法,包括以下步骤:
(1)、客户端浏览器向服务器请求监控页面:浏览器通过HTTP协议向服务器调用监控页面,服务器将监控页面返回给浏览器;
(2)、客户端浏览器接收服务器返回的监控页面后进行加载监控页面,同时加载Flex控件;
(3)、Flex控件绑定客户端PC的Socket通讯端口,等待服务器的连接;
(4)、Flex控件主动通过Socket连接服务器,告知自身已就绪,可以接收服务器的推送数据;
(5)、服务器收到Flex控件发送的告知信息后,将告知信息放到服务器的通知列表里;
(6)、若服务器数据发生更新时,服务器将新数据主动发送到通知列表的每个Flex控件上,则Flex控件将信息反馈到客户端浏览器上;若服务器数据没有发生更新,则继续等待服务器数据发生更新。
所述步骤(4)的Flex控件告知自身已就绪的内容包括Flex控件的编号、当前所在PC的IP地址、等待的端口。
所述的步骤(4)定期执行一次。
所述步骤(6)中服务器将新数据主动发送到通知列表的每个Flex控件上的具体步骤如下:(a)、服务器根据Flex控件的告知信息,找到Flex控件的IP地址与等待的端口;(b)、服务器主动发起Socket连接,若连接成功后将新数据发送到对应的Flex控件上,然后断开连接,然后继续等待服务器数据发生更新;若连接不成功,则尝试进行多次连接,如果仍然连接不成功,则将此Flex控件从通知列表中删除,然后继续等待服务器数据发生更新。
本发明所述的用于电力计量业务生产调度平台的Web实时数据主动推送方法,是通过在客户端浏览器中加载Flex控件来实现。当服务器数据发生更新时可实时将最新数据通过Socket推送到客户端浏览器的Flex控件,加强了客户端浏览器数据的实时性,减少了服务器和网络的压力;采用Flex控件可支持多种浏览器;利用Flex控件定时告知和服务器检测连接两种技术保证数据不会漏报和多报,非常适合用于电力计量业务生产调度平台的数据实时传送。
附图说明
图1为本发明的原理图;
图2为本发明的工作流程图。
具体实施方式
如图1所示,本发明涉及到3个相互协同的部分:设备、服务器和客户端浏览器,采用在客户端浏览器上加载Flex控件从而在B/S系统中使得浏览器与服务器建立Socket连接,这样就可以利用 Flex控件作为中间层来连接客户端浏览器上的Web页面和服务器端来进行Socket通信,客户端浏览器上的Flex控件与服务器可以相互发送数据,互相控制和调用,从而实现服务器主动推送更新数据的目的。因此当设备将其状态信息实时发送到服务器上,服务器就将获得的状态信息主动发送到客户端浏览器上。除此之外,客户端浏览器也可以通过Flex控件主动向服务器请求信息。
如图2所示,本发明的工作流程具体步骤如下所述:
(1)、客户端浏览器向服务器请求监控页面:浏览器通过HTTP协议向服务器调用监控页面,服务器将监控页面返回给浏览器;
(2)、客户端浏览器接收服务器返回的监控页面后进行加载监控页面,同时加载Flex控件;Flex控件是Macromedia公司提出的一种富客户端技术,可由浏览器中的Flash插件进行加载和运行;目前,大约99.8%的浏览器均可运行Flash,即可以运行Flex控件;在本发明中,当浏览器接收到服务器返回的监控页面时,加载此监控页面,此监控页面中包括Flex控件,浏览器在加载监控页面时同时也加载Flex控件;
(3)、Flex控件绑定客户端PC的Socket通讯端口,等待服务器的连接; Flex控件调用其关联的Applet组件,通过此组件绑定客户端PC的Socket端口;
(4)、Flex控件主动通过Socket连接服务器,告知自身已就绪,可以接收服务器的推送数据;所述告知自身已就绪的内容包括Flex控件的编号、当前所在PC的IP地址、等待的端口;此步骤定期执行一次,即相当于告知服务器本Flex控件仍然在线;
(5)、服务器收到Flex控件发送的告知信息后,将告知信息放到服务器的通知列表里;通知列表里维护了多个Flex控件信息,当服务器有数据更新时,将会一一通知这些Flex控件;
(6)、若服务器数据发生更新时,服务器将新数据主动发送到通知列表的每个Flex控件上:(a)、首先服务器根据Flex控件的告知信息,找到Flex控件的IP地址与等待的端口;(b)、服务器主动发起Socket连接,若连接成功后将新数据发送到对应的Flex控件上,然后断开连接,然后继续等待服务器数据发生更新;若连接不成功,则尝试进行多次连接,如果仍然连接不成功,则将此Flex控件从通知列表中删除,然后继续等待服务器数据发生更新;
若服务器数据没有发生更新,则继续等待服务器数据发生更新。
Claims (3)
1.一种Web实时数据主动推送方法,其特征在于:包括以下步骤:
(1)、客户端浏览器向服务器请求监控页面:浏览器通过HTTP协议向服务器调用监控页面,服务器将监控页面返回给浏览器;
(2)、客户端浏览器接收服务器返回的监控页面后进行加载监控页面,同时加载Flex控件;
(3)、Flex控件绑定客户端PC的Socket通讯端口,等待服务器的连接;
(4)、Flex控件主动通过Socket连接服务器,告知自身已就绪,可以接收服务器的推送数据;
(5)、服务器收到Flex控件发送的告知信息后,将告知信息放到服务器的通知列表里;
(6)、若服务器数据发生更新时,则服务器将新数据主动发送到通知列表的每个Flex控件上,Flex控件将信息反馈到客户端浏览器上;若服务器数据没有发生更新,则继续等待服务器数据发生更新;
所述步骤(6)中服务器将新数据主动发送到通知列表的每个Flex控件上的具体步骤如下:(a)、服务器根据Flex控件的告知信息,找到Flex控件的IP地址与等待的端口;(b)、服务器主动发起Socket连接,若连接成功后将新数据发送到对应的Flex控件上,然后断开连接,然后继续等待服务器数据发生更新;若连接不成功,则尝试进行多次连接,如果仍然连接不成功,则将此Flex控件从通知列表中删除,然后继续等待服务器数据发生更新。
2.根据权利要求1所述的Web实时数据主动推送方法,其特征在于:所述步骤(4)的Flex控件告知自身已就绪的内容包括Flex控件的编号、当前所在PC的IP地址、等待的端口。
3.根据权利要求2所述的Web实时数据主动推送方法,其特征在于:所述的步骤(4)定期执行一次。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110336281.4A CN102333128B (zh) | 2011-10-31 | 2011-10-31 | 一种Web实时数据主动推送方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110336281.4A CN102333128B (zh) | 2011-10-31 | 2011-10-31 | 一种Web实时数据主动推送方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102333128A CN102333128A (zh) | 2012-01-25 |
CN102333128B true CN102333128B (zh) | 2014-03-12 |
Family
ID=45484729
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110336281.4A Expired - Fee Related CN102333128B (zh) | 2011-10-31 | 2011-10-31 | 一种Web实时数据主动推送方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102333128B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105959366A (zh) * | 2016-04-27 | 2016-09-21 | 南京国电南自美卓控制系统有限公司 | 一种avc自动电压控制设备实时数据的web发布方法 |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103365873B (zh) * | 2012-03-28 | 2016-08-10 | 阿里巴巴集团控股有限公司 | 业务数据的推送方法及装置 |
CN102833323B (zh) * | 2012-08-14 | 2017-04-12 | 新浪网技术(中国)有限公司 | 服务器远程控制受控终端的方法和系统 |
CN103942227B (zh) * | 2013-01-23 | 2018-07-06 | 腾讯科技(深圳)有限公司 | 一种对信息推送过程进行渲染呈现的方法、装置和系统 |
CN103546564A (zh) * | 2013-10-28 | 2014-01-29 | 珠海许继芝电网自动化有限公司 | 基于Flex技术实现RIA的WEB应用方法及系统 |
CN103716371A (zh) * | 2013-10-31 | 2014-04-09 | 国家电网公司 | 一种Web实时数据主动推送方法 |
CN104834636B (zh) * | 2014-02-08 | 2019-09-24 | 上海携程商务有限公司 | 网页的加载方法及装置 |
CN105245615A (zh) * | 2015-10-27 | 2016-01-13 | 航天恒星科技有限公司 | 一种系统任务实时监控方法及系统 |
CN105610605B (zh) * | 2015-12-18 | 2019-04-23 | 成都广达新网科技股份有限公司 | 一种消息反向推送、网管系统报警及状态更新的方法 |
CN105681921B (zh) * | 2016-01-13 | 2019-04-02 | 广东有线广播电视网络有限公司 | 一种实现机顶盒实时刷新电视网页的方法及机顶盒 |
CN107317788A (zh) * | 2016-04-26 | 2017-11-03 | 北京京东尚科信息技术有限公司 | 实时数据推送方法和装置 |
CN108667861B (zh) * | 2017-03-28 | 2020-08-07 | 比亚迪股份有限公司 | 通过浏览器对设备实时监控的方法、系统以及服务器 |
CN107734012B (zh) * | 2017-09-27 | 2021-06-15 | 努比亚技术有限公司 | 消息推送方法、系统及计算机可读存储介质 |
CN109040296B (zh) * | 2018-08-30 | 2021-04-06 | 上海艾融软件股份有限公司 | 一种基于长连接的数据推送方法及系统 |
CN114928610A (zh) * | 2022-05-12 | 2022-08-19 | 优车库网络科技发展(深圳)有限公司 | 数据更新的通知方法、数据处理方法、装置、设备和介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101179435B (zh) * | 2007-11-22 | 2011-01-19 | Ut斯达康通讯有限公司 | 一种主动推送网管事件的方法及网络管理系统 |
CN101820449B (zh) * | 2010-04-20 | 2012-12-05 | 江苏方天电力技术有限公司 | 跨安全区应用服务隔离平台 |
-
2011
- 2011-10-31 CN CN201110336281.4A patent/CN102333128B/zh not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105959366A (zh) * | 2016-04-27 | 2016-09-21 | 南京国电南自美卓控制系统有限公司 | 一种avc自动电压控制设备实时数据的web发布方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102333128A (zh) | 2012-01-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102333128B (zh) | 一种Web实时数据主动推送方法 | |
CN103716371A (zh) | 一种Web实时数据主动推送方法 | |
CN101635728B (zh) | 内容分发网络中数据同步的方法及系统 | |
CN102209047B (zh) | 一种信息共享的即时通讯系统及方法 | |
KR101233263B1 (ko) | 피드백 메시지를 이용한 푸시 서비스 제공 시스템 및 방법 | |
CN101114980B (zh) | 建立即时通信关系的方法及其系统 | |
CN103312528B (zh) | 一种心跳消息发送方法及用户终端 | |
CN107528891B (zh) | 一种基于WebSocket的自动集群方法及其系统 | |
CN104811459A (zh) | 用于消息服务的处理方法、装置及系统、消息服务系统 | |
CN105847139A (zh) | 数据传输方法、装置及系统 | |
CN103440142A (zh) | 基于gprs远程升级及动态加载方法 | |
CN103516673A (zh) | 一种网络数据通信方法、系统及客户端和服务器 | |
CN101448004A (zh) | 基于即时通信的用户状态发布方法、服务器及系统 | |
CA2979824C (en) | Method and system for transferring messages between messaging systems | |
EP2688245A1 (en) | Method, auto-configuration server (acs), and system for obtaining status of device based on tr069 protocol | |
CN103457985A (zh) | 一种双通道通信方法和系统 | |
CN105554099A (zh) | 一种采集服务器负载均衡的方法及装置 | |
CN105260842A (zh) | 异构erp系统之间的通信方法和系统 | |
CN102223378B (zh) | 一种文件同步方法和系统 | |
CN100596123C (zh) | 一种网关系统及其消息业务处理方法 | |
CN201985898U (zh) | 通讯服务负载平衡系统 | |
CN107508916B (zh) | 用于智能机器人的服务器链接管理方法 | |
CN103312558B (zh) | 计算机客户服务器系统中网络连接有效性监测方法及系统 | |
CN116319732A (zh) | 一种基于RabbitMQ的消息队列集中配置管理系统及方法 | |
CN103685398A (zh) | 通信连接建立方法及通信系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20140312 Termination date: 20191031 |