国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      提供實(shí)時(shí)數(shù)據(jù)的系統(tǒng)和方法

      文檔序號(hào):7847434閱讀:900來(lái)源:國(guó)知局
      專(zhuān)利名稱(chēng):提供實(shí)時(shí)數(shù)據(jù)的系統(tǒng)和方法
      技術(shù)領(lǐng)域
      背景技術(shù)
      實(shí)時(shí)數(shù)據(jù)是指在起初創(chuàng)建數(shù)據(jù)之后在一定時(shí)間內(nèi)應(yīng)當(dāng)處理和/或傳送的任何數(shù)字或模擬信息。從創(chuàng)建數(shù)據(jù)之時(shí)直到處理和/或傳送數(shù)據(jù)消逝的時(shí)間被稱(chēng)為延遲。對(duì)于任何特定的實(shí)時(shí)應(yīng)用來(lái)說(shuō)可允許的最大延遲是依賴(lài)于應(yīng)用的。最大延遲是嚴(yán)格要求的應(yīng)用可以被稱(chēng)為“硬”實(shí)時(shí)應(yīng)用,而最大延遲不是嚴(yán)格要求的的應(yīng)用可以被稱(chēng)為“軟”實(shí)時(shí)應(yīng)用。軟實(shí)時(shí)應(yīng)用只需要滿(mǎn)足依賴(lài)應(yīng)用的、通常是主觀的、成為衡量“足夠迅速的”的標(biāo)準(zhǔn)。非實(shí)時(shí)數(shù)據(jù)是不需要滿(mǎn)足任何特定的延遲要求的數(shù)據(jù)。術(shù)語(yǔ)“數(shù)據(jù)”可以指硬實(shí)時(shí)數(shù)據(jù)、軟實(shí)時(shí)數(shù)據(jù)、或非實(shí)時(shí)數(shù)據(jù)。“實(shí)時(shí)數(shù)據(jù)”可以指硬實(shí)時(shí)數(shù)據(jù)或軟實(shí)時(shí)數(shù)據(jù)。由于物理過(guò)程或計(jì)算機(jī)程序?qū)崟r(shí)數(shù)據(jù)一般在處理數(shù)據(jù)的計(jì)算機(jī)系統(tǒng)外部生成。例如,實(shí)時(shí)數(shù)據(jù)可以包括來(lái)自諸如馬達(dá)狀態(tài)、液體罐水平、閥門(mén)位置、傳送帶速度等的工業(yè)過(guò)程控制系統(tǒng)的信息;諸如股票的金融工具的價(jià)格、數(shù)量等;諸如表明用戶(hù)已經(jīng)點(diǎn)擊計(jì)算機(jī)顯示器上的按鈕的人機(jī)交互事件;人類(lèi)操作員進(jìn)行的數(shù)據(jù)輸入;和計(jì)算機(jī)操作系統(tǒng)狀態(tài)變化。實(shí)際上,任何隨時(shí)間變化的信息均可以被視為實(shí)時(shí)數(shù)據(jù)??梢詫?shù)據(jù)的起源描述為“數(shù)據(jù)源”。例如,數(shù)據(jù)可以源于物理過(guò)程、通過(guò)電測(cè)量、 然后轉(zhuǎn)換為數(shù)字表示,或數(shù)據(jù)可以數(shù)字表示的形式產(chǎn)生。一般地,數(shù)據(jù)在數(shù)字計(jì)算機(jī)中以數(shù)字表示才是可用的,遵循零個(gè)或多個(gè)步驟將數(shù)據(jù)轉(zhuǎn)換成數(shù)字表示。數(shù)據(jù)源可以包含將數(shù)據(jù)轉(zhuǎn)換為計(jì)算機(jī)程序可訪問(wèn)的數(shù)字形式所需的所有組件和步驟。類(lèi)似于數(shù)據(jù)源的是數(shù)據(jù)接收器。數(shù)據(jù)接收器消耗或使用數(shù)據(jù)。數(shù)據(jù)接收器的某些實(shí)例是過(guò)程控制系統(tǒng)的致動(dòng)器;股票交易系統(tǒng)的交易處理軟件;人機(jī)交互應(yīng)用;數(shù)據(jù)庫(kù)或其他的數(shù)據(jù)存儲(chǔ)系統(tǒng)。許多數(shù)據(jù)源也是數(shù)據(jù)接收器。因此,數(shù)據(jù)源可以包含數(shù)據(jù)源、數(shù)據(jù)接收器、或同時(shí)包括數(shù)據(jù)源和數(shù)據(jù)接收器。例如,當(dāng)數(shù)據(jù)傳送至數(shù)據(jù)源時(shí),數(shù)據(jù)源也可以作為數(shù)據(jù)接收器。在計(jì)算機(jī)應(yīng)用中,一般由“服務(wù)器”管理數(shù)據(jù)。服務(wù)器可以作為數(shù)據(jù)源或作為數(shù)據(jù)接收器,或既作為數(shù)據(jù)源又作為服務(wù)器,允許“客戶(hù),,應(yīng)用程序與服務(wù)器管理的數(shù)據(jù)進(jìn)行交互作用。一般地,客戶(hù)應(yīng)用程序必須發(fā)起與服務(wù)器的連接,從而與數(shù)據(jù)進(jìn)行交互作用。連接可以是“短暫的”,連接只在與數(shù)據(jù)進(jìn)行的一個(gè)或一些交互作用的持續(xù)時(shí)間內(nèi)存在,或者連接可以是“長(zhǎng)命的”,連接在與數(shù)據(jù)進(jìn)行許多交互作用期間繼續(xù)存在,和可能在客戶(hù)應(yīng)用程序的有效期的持續(xù)時(shí)間內(nèi)存在。長(zhǎng)命的連接也可以被稱(chēng)為“持續(xù)的”連接。數(shù)據(jù)源以限定數(shù)據(jù)的數(shù)字表示的一個(gè)或多個(gè)“數(shù)據(jù)格式,,提供數(shù)據(jù)。數(shù)據(jù)格式可以符合公布標(biāo)準(zhǔn)或是數(shù)據(jù)源所特有的。相似地,數(shù)據(jù)接收器可以需要以公布標(biāo)準(zhǔn)格式的數(shù)據(jù)或數(shù)據(jù)源所特有格式的數(shù)據(jù)。數(shù)據(jù)源通過(guò)一個(gè)或多個(gè)“傳輸協(xié)議”提供數(shù)據(jù)訪問(wèn)。傳輸協(xié)議指定數(shù)據(jù)從數(shù)據(jù)源轉(zhuǎn)移至數(shù)據(jù)接收器依賴(lài)的機(jī)制。傳輸協(xié)議可以符合發(fā)布標(biāo)準(zhǔn)或?yàn)閿?shù)據(jù)源所特有的。數(shù)據(jù)源可以組合數(shù)據(jù)格式和傳輸協(xié)議,因此不是所有支持的數(shù)據(jù)格式均可以通過(guò)所有支持的傳輸協(xié)議傳輸?shù)摹R话愕?,“協(xié)議”或“數(shù)據(jù)協(xié)議”是指通過(guò)特定傳輸協(xié)議傳輸?shù)奶囟〝?shù)據(jù)格式的組合。為了使用數(shù)據(jù)源產(chǎn)生的數(shù)據(jù),數(shù)據(jù)接收器必須支持?jǐn)?shù)據(jù)源提供的至少一個(gè)數(shù)據(jù)協(xié)議。由于存在大量數(shù)據(jù)協(xié)議,所以所有數(shù)據(jù)源和數(shù)據(jù)接收器支持所有數(shù)據(jù)協(xié)議是不切實(shí)際的。因此,利用數(shù)據(jù)的客戶(hù)應(yīng)用程序一般創(chuàng)建為僅支持其主要目的需要的協(xié)議。相似地,數(shù)據(jù)源一般僅支持其主要目的必需的協(xié)議。所以,例如,沒(méi)有辦法使支持HTTP協(xié)議的web瀏覽器直接連接支持DDE協(xié)議的電子表格應(yīng)用程序。將數(shù)據(jù)從數(shù)據(jù)源支持的協(xié)議轉(zhuǎn)換為數(shù)據(jù)接收器支持的協(xié)議必須進(jìn)行協(xié)議轉(zhuǎn)換步驟,以便于數(shù)據(jù)接收器利用數(shù)據(jù)源提供的數(shù)據(jù)。可以由“中間設(shè)備”應(yīng)用程序執(zhí)行該轉(zhuǎn)換步驟。中間設(shè)備應(yīng)用程序的主要目的是通常通過(guò)將數(shù)據(jù)從一個(gè)協(xié)議轉(zhuǎn)換為另一個(gè)協(xié)議促進(jìn)在數(shù)據(jù)源和數(shù)據(jù)接收器之間的通信,以致于當(dāng)數(shù)據(jù)源和數(shù)據(jù)接收器未共享共同協(xié)議時(shí),數(shù)據(jù)源和數(shù)據(jù)接收器可以間接地進(jìn)行交互作用。數(shù)據(jù)源可以利用至少兩種方法將數(shù)據(jù)轉(zhuǎn)移至數(shù)據(jù)接收器在要求時(shí)數(shù)據(jù)源被動(dòng)地等待數(shù)據(jù)接收器,從而請(qǐng)求數(shù)據(jù)源中可用的某些或所有數(shù)據(jù)。當(dāng)數(shù)據(jù)接收器發(fā)出請(qǐng)求請(qǐng)求數(shù)據(jù)時(shí),數(shù)據(jù)源用表明所請(qǐng)求數(shù)據(jù)的當(dāng)前狀態(tài)的結(jié)果作為響應(yīng)。如果需要通知數(shù)據(jù)接收器更改為數(shù)據(jù),數(shù)據(jù)接收器必須重復(fù)請(qǐng)求,以便于數(shù)據(jù)源用更新數(shù)據(jù)作為響應(yīng)。由數(shù)據(jù)接收器對(duì)同一個(gè)數(shù)據(jù)進(jìn)行重復(fù)的請(qǐng)求被稱(chēng)為“輪詢(xún)”。數(shù)據(jù)接收器可以為每個(gè)新請(qǐng)求創(chuàng)建數(shù)據(jù)源的短暫連接或持續(xù)連接,許多重復(fù)請(qǐng)求通過(guò)持續(xù)連接傳送。通過(guò)訂閱數(shù)據(jù)源創(chuàng)建數(shù)據(jù)源的持續(xù)連接,并訂閱來(lái)自數(shù)據(jù)源的某些或所有可用數(shù)據(jù)。當(dāng)發(fā)生變化時(shí),數(shù)據(jù)源將任何變化通過(guò)持續(xù)連接傳送至數(shù)據(jù)。數(shù)據(jù)源將繼續(xù)發(fā)送變化至數(shù)據(jù),直到數(shù)據(jù)接收器指定不同的或連接關(guān)閉。理解的是,諸如共享內(nèi)存、消息隊(duì)列、和郵箱的數(shù)據(jù)轉(zhuǎn)移方法是關(guān)于經(jīng)要求或訂閱方法的變種。還理解的是,術(shù)語(yǔ)數(shù)據(jù)轉(zhuǎn)移、數(shù)據(jù)傳播、或數(shù)據(jù)傳輸均是指數(shù)據(jù)在系統(tǒng)內(nèi)的活動(dòng),這些術(shù)語(yǔ)可以互換地使用,因?yàn)檫@些術(shù)語(yǔ)涉及具體的數(shù)據(jù)轉(zhuǎn)移方法。進(jìn)一步理解的是,這些方法獨(dú)立于隱含的傳輸協(xié)議。處理實(shí)時(shí)數(shù)據(jù)的計(jì)算機(jī)應(yīng)用程序必須是可靠的、應(yīng)答的、和容易連接其數(shù)據(jù)源。這意味著從歷史上講已經(jīng)將實(shí)時(shí)數(shù)據(jù)處理應(yīng)用程序創(chuàng)建為直接或間接連接數(shù)據(jù)源的獨(dú)立應(yīng)用程序。該獨(dú)立結(jié)構(gòu)也允許應(yīng)用程序充分利用計(jì)算機(jī)的圖形能力提供實(shí)時(shí)數(shù)據(jù)的豐富動(dòng)態(tài)可視化。相比之下,就數(shù)據(jù)連通性和圖形速度而言,已經(jīng)證明基于web瀏覽器技術(shù)的應(yīng)用程序是不合適的。某些開(kāi)發(fā)人員努力已經(jīng)利用web瀏覽器中的ActiveX組件提供對(duì)數(shù)據(jù)驅(qū)動(dòng)顯示的訪問(wèn),但是現(xiàn)代瀏覽器一般不支持這些組件,并且由于組件表示的安全風(fēng)險(xiǎn)這些組件受到限制影響。
      為了利用瀏覽器的內(nèi)嵌Javascript引擎顯示web瀏覽器中的變化數(shù)據(jù),已經(jīng)做出努力。一般這是通過(guò)利用被稱(chēng)為AJAX (異步Javascript和XML)的方法實(shí)現(xiàn)的,在AJAX中 web瀏覽器周期性地輪詢(xún)新數(shù)據(jù),然后相應(yīng)地更新其顯示。該輪詢(xún)機(jī)制的效率非常低,只適合于相對(duì)少的數(shù)據(jù)集或相對(duì)慢速運(yùn)動(dòng)的數(shù)據(jù)。降低輪詢(xún)速度保存CPU或網(wǎng)絡(luò)帶寬會(huì)增加數(shù)據(jù)延遲,這對(duì)于實(shí)時(shí)應(yīng)用程序而言是無(wú)法接受的。關(guān)于通過(guò)稱(chēng)為流動(dòng)AJAX的機(jī)制改進(jìn)AJAX所做的努力利用瀏覽器網(wǎng)頁(yè)加載機(jī)制的副作用通過(guò)隨著時(shí)間的推移將Javascript指令增加至網(wǎng)頁(yè)引起瀏覽器網(wǎng)頁(yè)增量地增加。 當(dāng)每個(gè)JavMcript指令到達(dá)時(shí)就執(zhí)行每個(gè)指令,呈現(xiàn)出連續(xù)的數(shù)據(jù)流。有效地欺騙Web瀏覽器使其認(rèn)為正通過(guò)較慢的網(wǎng)絡(luò)連接加載非常大的web網(wǎng)頁(yè)。該方法具有一些缺點(diǎn),包括由于正在傳送的網(wǎng)頁(yè)不斷增大,web瀏覽器的內(nèi)存和CPU用法可以隨著時(shí)間連續(xù)地增加。AJAX和流動(dòng)AJAX方法同時(shí)受到web瀏覽器內(nèi)缺乏質(zhì)量顯示選項(xiàng)的影響。Web瀏覽器一般設(shè)計(jì)為顯示靜態(tài)網(wǎng)頁(yè)和web “窗體”,并不提供高速或高質(zhì)量的圖形顯示選項(xiàng)。關(guān)于圖形顯示選項(xiàng)改進(jìn)做出的努力是為了使web瀏覽器互相兼容,且一般執(zhí)行速度非常慢?;趦?nèi)嵌web瀏覽器性能的所有數(shù)據(jù)傳輸解決方案主要目標(biāo)是接收web瀏覽器中的數(shù)據(jù)。數(shù)據(jù)通信是單向的,原因是從服務(wù)器接收數(shù)據(jù)的連接無(wú)法用于傳送數(shù)據(jù)至服務(wù)器。 如果web瀏覽器需要將數(shù)據(jù)反向傳送至服務(wù)器,那么web瀏覽器必須打開(kāi)新的連接、傳送 HTTP請(qǐng)求、然后再次關(guān)閉連接。因此,諸如流動(dòng)AJAX的解決方案將數(shù)據(jù)反向傳送至數(shù)據(jù)服務(wù)器非常慢,因?yàn)樾枰獮槊總€(gè)數(shù)據(jù)傳輸發(fā)送新的HTTP請(qǐng)求會(huì)引起較大的開(kāi)銷(xiāo)和延遲?;趙eb的數(shù)據(jù)可視化的努力試圖通過(guò)將好像很快的數(shù)據(jù)移動(dòng)呈現(xiàn)為緩慢移動(dòng) (高延遲)的數(shù)據(jù)改進(jìn)用戶(hù)體驗(yàn)。這是通過(guò)顯示web瀏覽器中比數(shù)據(jù)實(shí)際到達(dá)的頻率更高的頻率的內(nèi)插數(shù)據(jù)來(lái)實(shí)現(xiàn)的。例如,表示速度計(jì)的圓形計(jì)量器可以接收每5秒鐘分割的值 1和值100。網(wǎng)頁(yè)可以每秒鐘提取計(jì)量器刻度盤(pán)5次,每次用4改變值。這會(huì)給觀察者提供平穩(wěn)變化的速度,即使基本的數(shù)據(jù)傳輸不含有該信息。這種內(nèi)插模糊了基本數(shù)據(jù)的真實(shí)行為,且內(nèi)插在諸如過(guò)程控制和股票交易市場(chǎng)的實(shí)時(shí)應(yīng)用中一般是不可接受的。諸如Adobe Flash 和 Microsoft Silverlight 的豐富性網(wǎng)絡(luò)應(yīng)用服務(wù)(“RIA”) 框架同時(shí)為web瀏覽器內(nèi)的數(shù)據(jù)處理和圖形顯示提供了改進(jìn)的平臺(tái)。這些RIA框架也支持 RIA內(nèi)的直接TCP/IP通信。相似地,這些特征的組合使得可以處理和顯示web瀏覽器內(nèi)的實(shí)時(shí)信息。由于在軟件領(lǐng)域中RIA主要適合于視頻、廣告、和游戲,所以該處理和顯示性能還未轉(zhuǎn)變?yōu)閷?shí)時(shí)數(shù)據(jù)系統(tǒng)。

      發(fā)明內(nèi)容
      本發(fā)明提供了使用RIA框架的圖像特征和聯(lián)網(wǎng)特征和至少一個(gè)實(shí)時(shí)數(shù)據(jù)服務(wù)器的系統(tǒng)和方法,從而提供在web瀏覽器內(nèi)的較低延遲的實(shí)時(shí)數(shù)據(jù)應(yīng)用。本發(fā)明克服了當(dāng)前 AJAX和流動(dòng)AJAX的限制,同時(shí)處理數(shù)據(jù)在web瀏覽器中不可用的數(shù)據(jù)源。本發(fā)明通過(guò)將數(shù)據(jù)延遲降低至利用真實(shí)數(shù)據(jù)值而非內(nèi)插值可以動(dòng)態(tài)顯示可視化組件的點(diǎn)對(duì)本領(lǐng)域狀態(tài)的實(shí)時(shí)數(shù)據(jù)傳輸至web瀏覽器進(jìn)行改進(jìn)。這使得數(shù)據(jù)的短暫行為更加準(zhǔn)確地呈現(xiàn)給用戶(hù)。在理解通過(guò)數(shù)據(jù)呈現(xiàn)的實(shí)時(shí)系統(tǒng)的真實(shí)動(dòng)態(tài)方面短暫的行為通常較重要。例如,正在觀看物理計(jì)量器的人可以通過(guò)觀看計(jì)量器指針行為的振動(dòng)或過(guò)調(diào)量辨別重要的系統(tǒng)特性。在本發(fā)明的一個(gè)實(shí)施例中,物理計(jì)量器的數(shù)字表示可以捕獲指針動(dòng)態(tài),并提供與物理計(jì)量器相同的高質(zhì)量信息。本發(fā)明極大地改進(jìn)了從用戶(hù)到數(shù)據(jù)服務(wù)器的數(shù)據(jù)傳輸?shù)乃俣龋档土?CPU和網(wǎng)絡(luò)開(kāi)銷(xiāo),也降低了延遲。這使得用戶(hù)可以參與到系統(tǒng)響應(yīng)對(duì)正確行為來(lái)說(shuō)比較重要的更復(fù)雜的控制情況中。例如,系統(tǒng)需要保持-釋放交互作用同時(shí)用水填充容器。用戶(hù)將按下按鈕,并保持按下的狀態(tài)直到容器滿(mǎn),然后釋放按鈕。顯然地,系統(tǒng)必須迅速響應(yīng),從而避免過(guò)度填充容器。由于數(shù)據(jù)傳輸延遲的不可預(yù)測(cè)性,這種控制在一般的基于web應(yīng)用中不可行。令人驚訝的是,本發(fā)明對(duì)先前通過(guò)web瀏覽器考慮的較慢、不可靠的、或原始的控制和實(shí)時(shí)數(shù)據(jù)應(yīng)用進(jìn)行分類(lèi)?!愕膚eb應(yīng)用處理由應(yīng)用設(shè)計(jì)人員提供的特定格式的數(shù)據(jù)。對(duì)于限制終端選擇或簡(jiǎn)單的設(shè)計(jì)上的限制而言,這是有意的方法。甚至在數(shù)據(jù)格式遵循工業(yè)標(biāo)準(zhǔn)(例如XML或JS0N)的情況中,數(shù)據(jù)源是應(yīng)用所特有的。本發(fā)明還提供了用于傳送多種實(shí)時(shí)數(shù)據(jù)的同時(shí)源于工業(yè)標(biāo)準(zhǔn)和專(zhuān)用源的通用機(jī)制。有利地,本發(fā)明可以進(jìn)一步提供以多種數(shù)據(jù)格式的數(shù)據(jù)。許多數(shù)據(jù)源,實(shí)時(shí)的和非實(shí)時(shí)的,均不是為了網(wǎng)絡(luò)使用(例如,通過(guò)網(wǎng)絡(luò)傳輸)。本發(fā)明允許數(shù)據(jù)從這些諸如Microsoft Excel (微軟公司)的數(shù)據(jù)源通過(guò)網(wǎng)絡(luò)可靠且迅速的傳輸至任何RIA或基于web的應(yīng)用。某些數(shù)據(jù)源,例如基于OPC的數(shù)據(jù)源,是為了網(wǎng)絡(luò)使用,但是不是設(shè)計(jì)為與web瀏覽器進(jìn)行通信。本發(fā)明也允許這些數(shù)據(jù)源迅速且可靠地傳送至基于web的應(yīng)用。其他數(shù)據(jù)源,例如數(shù)據(jù)庫(kù)系統(tǒng),完全不為接口提供實(shí)時(shí)信息。本發(fā)明允許傳送來(lái)自數(shù)據(jù)源的諸如數(shù)據(jù)庫(kù)應(yīng)用的非實(shí)時(shí)數(shù)據(jù),就好像是實(shí)時(shí)數(shù)據(jù)一樣,因而消除了執(zhí)行數(shù)據(jù)庫(kù)的無(wú)效輪詢(xún)對(duì)RIA或基于web應(yīng)用的需求。數(shù)據(jù)源和數(shù)據(jù)接收器可以通過(guò)持續(xù)連接或短暫連接連接數(shù)據(jù)庫(kù)。理解的是,與服務(wù)器的連接方法將反映對(duì)特定數(shù)據(jù)源或數(shù)據(jù)接收器的需求。本發(fā)明提供了來(lái)自一個(gè)或多個(gè)數(shù)據(jù)源的實(shí)時(shí)數(shù)據(jù)可以有效地用于富互聯(lián)網(wǎng)應(yīng)用的方法。本發(fā)明進(jìn)一步提供了 RIA有效地修改實(shí)時(shí)數(shù)據(jù)或生成可以反向傳輸至數(shù)據(jù)源的實(shí)時(shí)數(shù)據(jù)的方法。然后,數(shù)據(jù)源可以將數(shù)據(jù)通過(guò)網(wǎng)絡(luò)重新傳送至其他的RIA。因此,本發(fā)明有效地使得許多RIA應(yīng)用互相之間進(jìn)行實(shí)時(shí)通信,以及共同與一個(gè)或多個(gè)實(shí)時(shí)數(shù)據(jù)源進(jìn)行通信。本發(fā)明考慮實(shí)時(shí)數(shù)據(jù)的抽象概念,以便于可以利用抽象概念表示的任何數(shù)據(jù)可以用于RIA,無(wú)論其源、表示方法、或轉(zhuǎn)移協(xié)議。


      圖1是示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的在RIA和服務(wù)器之間的直接連接的示例性的方框圖。圖2是示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的在RIA、服務(wù)器、和單獨(dú)的數(shù)據(jù)源之間的連接的示例性的方框圖。圖3是示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的在RIA、服務(wù)器、和多個(gè)單獨(dú)的數(shù)據(jù)源之間的連接的示例性的方框圖。圖4是示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的RIA控制流的一個(gè)方法的示例性的流程圖。圖5ajb是示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的服務(wù)器操作的一個(gè)方法的示例性
      7的流程圖。圖6是示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的數(shù)據(jù)服務(wù)器管理與多個(gè)RIA的同步連接的示例性的方框圖。圖7是示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的在電子表格應(yīng)用程序和RIA之間通過(guò)局域網(wǎng)或廣域網(wǎng)進(jìn)行數(shù)據(jù)的實(shí)時(shí)傳輸?shù)氖纠缘姆娇驁D。圖8是示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的系統(tǒng)實(shí)施的示例性的方框圖。
      具體實(shí)施例方式提供下面的描述是為了能夠使本領(lǐng)域的技術(shù)人員實(shí)現(xiàn)和利用本發(fā)明,以及在本發(fā)明的特定應(yīng)用的背景下提供了下面的說(shuō)明書(shū)。本領(lǐng)域的技術(shù)人員將容易看出,在不偏離本發(fā)明的保護(hù)范圍的情況下,可以對(duì)公開(kāi)的實(shí)施例進(jìn)行各種改進(jìn),以及本文中定義的一般原理可以應(yīng)用于其他的實(shí)施例和應(yīng)用中。不同實(shí)施例和實(shí)例的參考資料并不會(huì)限制本發(fā)明的保護(hù)范圍,本發(fā)明的保護(hù)范圍僅由所附的權(quán)利要求的保護(hù)范圍限制。此外,在該說(shuō)明書(shū)中闡述的實(shí)例不是為了起到限制作用,僅僅是闡述要求的發(fā)明的許多可能的實(shí)施例中的某些實(shí)施例。執(zhí)行本發(fā)明的當(dāng)前實(shí)施例的編程環(huán)境說(shuō)明性地包括通用計(jì)算機(jī)或?qū)S迷O(shè)備,例如便攜式計(jì)算機(jī)或電話。為了簡(jiǎn)潔起見(jiàn),可以省略這些設(shè)備(例如,處理器、內(nèi)存、數(shù)據(jù)存儲(chǔ)器、顯示器、用戶(hù)輸入裝置)的詳細(xì)信息。還理解的是,可以利用多種方法實(shí)施本發(fā)明的技術(shù)。例如,本文中所描述的方法可以在計(jì)算機(jī)系統(tǒng)上執(zhí)行軟件實(shí)施,或在硬件中利用微處理器或其他專(zhuān)門(mén)設(shè)計(jì)的專(zhuān)用集成電路、可編程邏輯設(shè)備、或其組合實(shí)施。特別地,可以通過(guò)駐存在合適的計(jì)算機(jī)可讀介質(zhì)上的一連串計(jì)算機(jī)可執(zhí)行指令實(shí)施本文中所描述的方法。合適的計(jì)算機(jī)可讀介質(zhì)可以包括易失性(例如,RAM)和/或非易失性(例如,ROM、磁盤(pán))存儲(chǔ)器、載波、和傳輸介質(zhì)(例如,銅線、 同軸電纜、光纖介質(zhì))。示例性的載波可以采用電信號(hào)、電磁信號(hào)、或光信號(hào)的形式,沿著局域網(wǎng)、諸如互聯(lián)網(wǎng)的公開(kāi)可訪問(wèn)網(wǎng)絡(luò)、或某些其他通信鏈路傳送數(shù)字?jǐn)?shù)據(jù)流。關(guān)于附圖中所示的實(shí)例實(shí)施例,可以理解,為了簡(jiǎn)潔起見(jiàn)選擇了簡(jiǎn)化的實(shí)例。出現(xiàn)在附圖中的元件(例如,RIA、服務(wù)器、數(shù)據(jù)源、數(shù)據(jù)接收器等)的一個(gè)實(shí)例可以用多個(gè)相同的元件替代,且仍然在本發(fā)明的保護(hù)范圍內(nèi)。因此,在一個(gè)方面,本發(fā)明提供了方法用于提供實(shí)時(shí)數(shù)據(jù)給RIA,該方法包含在數(shù)據(jù)源產(chǎn)生數(shù)據(jù);將數(shù)據(jù)傳播至服務(wù)器;在服務(wù)器采集數(shù)據(jù);創(chuàng)建從RIA到服務(wù)器的持續(xù)連接;和訂閱到所訂閱數(shù)據(jù)的RIA,其中所訂閱數(shù)據(jù)包含在服務(wù)器采集的數(shù)據(jù)的至少某些數(shù)據(jù),其中當(dāng)在服務(wù)器采集數(shù)據(jù)時(shí),服務(wù)器將所訂閱數(shù)據(jù)通過(guò)持續(xù)連接傳播至RIA。該方法進(jìn)一步包含將起源RIA的數(shù)據(jù)發(fā)送至服務(wù)器。起源RIA的數(shù)據(jù)可以含有通過(guò)持續(xù)連接至數(shù)據(jù)的至少一個(gè)更改請(qǐng)求。進(jìn)一步,數(shù)據(jù)可以通過(guò)至少一個(gè)中間組件傳播。服務(wù)器可以接收至少一個(gè)更改請(qǐng)求,并將至少一個(gè)更改請(qǐng)求傳送至數(shù)據(jù)源??梢酝ㄟ^(guò)中間組件傳送至少一個(gè)更改請(qǐng)求。中間組件可以是中間硬件組件或中間軟件組件??蛇x地,RIA可以訂閱所訂閱數(shù)據(jù)。在數(shù)據(jù)源產(chǎn)生數(shù)據(jù)和將數(shù)據(jù)傳播至服務(wù)器可以與在服務(wù)器采集數(shù)據(jù)同時(shí)發(fā)生。RIA 可以執(zhí)行基于數(shù)據(jù)的行為,例如圖形表示的計(jì)算或修改。RIA可以將數(shù)據(jù)的可視化表示顯示在用戶(hù)顯示器,用戶(hù)可以與可視化表示進(jìn)行交互,從而生成源于RIA的數(shù)據(jù)??梢暬硎究梢允窃赗IA框架內(nèi)運(yùn)行的程序。起源RIA的數(shù)據(jù)可以指示服務(wù)器執(zhí)行行為,例如關(guān)閉服務(wù)器,或改變其行為,例如改變哪個(gè)數(shù)據(jù)來(lái)自服務(wù)器。例如,起源RIA的數(shù)據(jù)可以是用戶(hù)交互作用、計(jì)時(shí)器事件、對(duì)來(lái)自服務(wù)器的數(shù)據(jù)更改的響應(yīng)、腳本、或另一個(gè)非用戶(hù)生成的事件的結(jié)果。在另一個(gè)方面中,本發(fā)明提供了提供實(shí)時(shí)數(shù)據(jù)給RIA的計(jì)算機(jī)實(shí)施方法,該方法包含提供來(lái)自數(shù)據(jù)源的數(shù)據(jù);將來(lái)自數(shù)據(jù)源的數(shù)據(jù)傳播至服務(wù)器;在服務(wù)器采集數(shù)據(jù);創(chuàng)建從服務(wù)器到RIA的第一持續(xù)連接;創(chuàng)建從RIA到服務(wù)器的第二持續(xù)連接;將來(lái)自RIA的數(shù)據(jù)通過(guò)第二持續(xù)連接傳播至服務(wù)器;和訂閱到所訂閱數(shù)據(jù)的RIA,其中所訂閱數(shù)據(jù)包含在服務(wù)器采集的數(shù)據(jù)的至少某些數(shù)據(jù),以及其中服務(wù)器將所訂閱數(shù)據(jù)通過(guò)第一持續(xù)連接傳播至RIA。該方法可以進(jìn)一步包含將來(lái)自服務(wù)器的數(shù)據(jù)傳播至數(shù)據(jù)接收器。第一持續(xù)連接和第二持續(xù)連接可以由單個(gè)連接構(gòu)成。數(shù)據(jù)源、數(shù)據(jù)接收器、和服務(wù)器可以由單個(gè)組件或兩個(gè)組件的組合構(gòu)成。數(shù)據(jù)可以通過(guò)從以下組中選擇的至少一個(gè)媒介物進(jìn)行傳播軟件組件、硬件組件、和網(wǎng)絡(luò)。數(shù)據(jù)項(xiàng)可以基于訂閱在RIA和服務(wù)器之間傳播,其中數(shù)據(jù)項(xiàng)響應(yīng)數(shù)據(jù)項(xiàng)中的變化立刻傳播??梢詮陌韵碌慕M中選擇傳播的數(shù)據(jù)數(shù)值數(shù)據(jù)、非數(shù)值數(shù)據(jù)、配置設(shè)置、和可執(zhí)行指令。RIA可以執(zhí)行基于數(shù)據(jù)的行為,其中行為從包含以下的組中選擇修改用戶(hù)顯示器的可視化表示、計(jì)算、新數(shù)據(jù)的生成、現(xiàn)有數(shù)據(jù)的修改、數(shù)據(jù)存儲(chǔ)、聲音指示、腳本執(zhí)行、數(shù)據(jù)至服務(wù)器的傳播、用戶(hù)可視化編程響應(yīng)、和非用戶(hù)可視化編程響應(yīng)。在RIA生成的數(shù)據(jù)可以指示服務(wù)器執(zhí)行從包含以下的組中選擇的行為在服務(wù)器內(nèi)進(jìn)行的數(shù)據(jù)修改、數(shù)據(jù)至連接服務(wù)器的數(shù)據(jù)接收器的傳播、腳本的執(zhí)行、數(shù)據(jù)至文件系統(tǒng)的存儲(chǔ)、新數(shù)據(jù)的創(chuàng)建、新數(shù)據(jù)至連接服務(wù)器的數(shù)據(jù)接收器的傳播、服務(wù)器配置的修改、服務(wù)器行為的修改、用戶(hù)可視化編程響應(yīng)、和非用戶(hù)可視化編程響應(yīng)。還是在另一個(gè)方面中,本發(fā)明提供了存儲(chǔ)指令的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),當(dāng)在一個(gè)或多個(gè)計(jì)算機(jī)上執(zhí)行指令時(shí),會(huì)引起計(jì)算機(jī)執(zhí)行如上所述的提供實(shí)時(shí)數(shù)據(jù)給RIA的方法。在另一個(gè)方面中,本發(fā)明提供了用于提供實(shí)時(shí)數(shù)據(jù)給RIA的計(jì)算機(jī)系統(tǒng),該計(jì)算機(jī)系統(tǒng)包含處理器、輸入裝置、顯示器、至少一個(gè)數(shù)據(jù)源、至少一個(gè)服務(wù)器;至少一個(gè)RIA ;以及可選的至少一個(gè)數(shù)據(jù)接收器,其中服務(wù)器包含用于從至少一個(gè)數(shù)據(jù)源采集數(shù)據(jù)的數(shù)據(jù)采集組件;用于發(fā)送數(shù)據(jù)至至少一個(gè)數(shù)據(jù)客戶(hù)端的數(shù)據(jù)發(fā)射組件。服務(wù)器可以進(jìn)一步包含用于修改由數(shù)據(jù)發(fā)射組件發(fā)射的由數(shù)據(jù)采集組件采集的數(shù)據(jù)形式的數(shù)據(jù)修改組件。理解的是,至少一個(gè)數(shù)據(jù)源和至少一個(gè)服務(wù)器可以在至少一個(gè)計(jì)算機(jī)程序(例如,單個(gè)計(jì)算機(jī)程序、或兩個(gè)或三個(gè)單獨(dú)的計(jì)算機(jī)程序)中實(shí)施。服務(wù)器可以進(jìn)一步包含從以下選擇的一個(gè)或多個(gè)組件數(shù)據(jù)修改組件;數(shù)據(jù)創(chuàng)建組件;用戶(hù)界面組件;計(jì)算機(jī)文件系統(tǒng)交互組件;用于與運(yùn)行服務(wù)器的計(jì)算機(jī)上運(yùn)行的其他程序進(jìn)行交互的程序交互組件;用于執(zhí)行可編程行為的腳本語(yǔ)言組件;用于接收來(lái)自客戶(hù)程序的HTTP請(qǐng)求和以那些請(qǐng)求指定的文檔以與“web服務(wù)器”相似的方式做出響應(yīng)的HTTP組件,包括能夠響應(yīng)請(qǐng)求動(dòng)態(tài)地構(gòu)建文檔,和包括文檔內(nèi)駐存在服務(wù)器中數(shù)據(jù)的當(dāng)前值和執(zhí)行服務(wù)器中的內(nèi)嵌腳本語(yǔ)言的聲明的結(jié)果;用于交換和同步在任何局域網(wǎng)或網(wǎng)絡(luò)可訪問(wèn)的計(jì)算機(jī)上運(yùn)行服務(wù)器的另一種情況的同步組件,因此服務(wù)器本質(zhì)上維持?jǐn)?shù)據(jù)的相同拷貝,因而能夠使客戶(hù)應(yīng)用連接服務(wù)器的任一種情形與相同的數(shù)據(jù)集進(jìn)行交互;用于限制采集數(shù)據(jù)的速度的第一減速組件;用于限制發(fā)送數(shù)據(jù)的速度的第二減速組件;用于檢測(cè)與其他服務(wù)器失去連接和當(dāng)恢復(fù)連接時(shí)重新連接其他服務(wù)器的連接組件;用于冗余地連接相同或相似信息的多個(gè)其他服務(wù)器的冗余組件,以便于在一個(gè)或多個(gè)其他服務(wù)器不可訪問(wèn)時(shí),可以采集來(lái)自其他服務(wù)器的任一服務(wù)器的數(shù)據(jù);和橋接組件,用于把數(shù)據(jù)源連結(jié)起來(lái)以便于這些數(shù)據(jù)源內(nèi)的某些或所有數(shù)據(jù)彼此維持相似的值,或數(shù)據(jù)源之間的橋接數(shù)據(jù),包括數(shù)學(xué)變換,以便于當(dāng)在其他源中的數(shù)據(jù)進(jìn)行數(shù)學(xué)變換時(shí)維持一個(gè)源中的數(shù)據(jù),包括能夠同時(shí)正向和方向地通過(guò)雙向橋接操作應(yīng)用數(shù)學(xué)變換。理解的是,通過(guò)將額外的功能增加至服務(wù)器可以擴(kuò)展這組服務(wù)器組件,從而支持其他的數(shù)據(jù)采集和傳輸機(jī)制、其他的處理機(jī)制、和其他的存儲(chǔ)機(jī)制。數(shù)據(jù)采集組件可以通過(guò)一個(gè)或多個(gè)以下方式采集數(shù)據(jù)在要求時(shí),其中服務(wù)器發(fā)送請(qǐng)求駐存在另一個(gè)服務(wù)器中的某些或所有數(shù)據(jù)的請(qǐng)求,和其他服務(wù)器響應(yīng)請(qǐng)求以所請(qǐng)求數(shù)據(jù)的當(dāng)前值或值只做出一次響應(yīng);通過(guò)訂閱,其中服務(wù)器發(fā)送訂閱駐存在另一個(gè)服務(wù)器中的某些或所有數(shù)據(jù)的請(qǐng)求,和其他服務(wù)器通過(guò)發(fā)送其數(shù)據(jù)的值或當(dāng)前值做出響應(yīng),然后繼續(xù)發(fā)送隨后的變化至其他服務(wù)器,或請(qǐng)求其他服務(wù)器停止發(fā)送更新;經(jīng)過(guò)觸發(fā),其中客戶(hù)端、腳本、或人(“用戶(hù)”)構(gòu)造服務(wù)器只有當(dāng)滿(mǎn)足某些觸發(fā)條件時(shí)才采集數(shù)據(jù),某些觸發(fā)條件可以是計(jì)時(shí)器、一天的時(shí)段、數(shù)據(jù)變化、系統(tǒng)狀態(tài)的改變、用戶(hù)行為、或某些其他可檢測(cè)的事件;和通過(guò)被動(dòng)地等待“客戶(hù)”應(yīng)用將數(shù)據(jù)發(fā)送至服務(wù)器。數(shù)據(jù)發(fā)射組件可以以一個(gè)或多個(gè)以下方式發(fā)送數(shù)據(jù)在要求時(shí),其中“客戶(hù)”應(yīng)用發(fā)送請(qǐng)求某些或所有數(shù)據(jù)的請(qǐng)求,和服務(wù)器響應(yīng)請(qǐng)求以所請(qǐng)求數(shù)據(jù)的當(dāng)前值或值只做出一次響應(yīng);通過(guò)訂閱,其中客戶(hù)應(yīng)用發(fā)送訂閱某些或所有數(shù)據(jù)的請(qǐng)求,服務(wù)器通過(guò)發(fā)送數(shù)據(jù)的值或當(dāng)前值做出響應(yīng),然后繼續(xù)發(fā)送隨后的變化至數(shù)據(jù)的當(dāng)前值或值,直到客戶(hù)端終止其與服務(wù)器的連接或請(qǐng)求服務(wù)器停止發(fā)送更新;經(jīng)過(guò)觸發(fā),其中客戶(hù)端、腳本、或人(“用戶(hù)”) 構(gòu)造服務(wù)器只有當(dāng)滿(mǎn)足某些觸發(fā)條件時(shí)才發(fā)送數(shù)據(jù),某些觸發(fā)條件可以是計(jì)時(shí)器、一天的時(shí)段、數(shù)據(jù)變化、系統(tǒng)狀態(tài)的改變、用戶(hù)行為、或某些其他可檢測(cè)的事件??梢岳靡粋€(gè)或多個(gè)從以下選擇的傳輸協(xié)議接收在采集組件采集的數(shù)據(jù)動(dòng)態(tài)數(shù)據(jù)交換(DDE)、過(guò)程控制(OPC)的OLE、OPC警報(bào)和事件規(guī)格(OPC A&E)、OPC統(tǒng)一結(jié)構(gòu) (OPC-UA)、OPC快捷接口 (OPC-Xi)、TCP/IP、通過(guò)定制接口在TCP/IP的SSL (安全套接層協(xié)議)、超鏈接傳輸協(xié)議(HTTP)、可靠的HTTP(HTTPQ、開(kāi)放數(shù)據(jù)庫(kù)連接(ODBC)、微軟實(shí)時(shí)數(shù)據(jù)規(guī)格(RTD)、消息隊(duì)列、Windows Communication Foundation (WCF)、諸如 Profibus 和 Modbus的工業(yè)總線協(xié)議、Windows系統(tǒng)性能計(jì)數(shù)器、根據(jù)嵌入式系統(tǒng)的TCP/IP通信、非 MS-Windows 系統(tǒng)的 TCP/IP、Linux 的 TCP/IP 通信、QNX 的 TCP/IP 通信、TRON 的 TCP/IP 通信、提供C編譯器和TCP實(shí)施的任何系統(tǒng)的TCP/IP通信、利用內(nèi)嵌腳本語(yǔ)言書(shū)寫(xiě)的腳本、 由人通過(guò)用戶(hù)界面輸入的數(shù)據(jù)、從局域磁盤(pán)文件讀取的數(shù)據(jù)、從遠(yuǎn)程可訪問(wèn)磁盤(pán)文件讀取的數(shù)據(jù)、專(zhuān)用格式、用戶(hù)定義的格式、和通過(guò)擴(kuò)展至服務(wù)器增加的格式。專(zhuān)用格式的實(shí)例是 Wonderware SuitLink 。可以利用一個(gè)或多個(gè)從以下選擇的傳輸協(xié)議傳送從數(shù)據(jù)發(fā)射組件發(fā)射的數(shù)據(jù)動(dòng)態(tài)數(shù)據(jù)交換(DDE)、過(guò)程控制(OPC)的OLE、OPC警報(bào)和事件規(guī)格(OPC A&E)、OPC統(tǒng)一結(jié)構(gòu) (OPC-UA)、OPC直接接口(OPC-Xi)、TCP/IP、通過(guò)定制接口在TCP/IP的SSL(安全套接層協(xié)議)、超鏈接傳輸協(xié)議(HTTP)、可靠的HTTP(HTTPS)、開(kāi)放的數(shù)據(jù)庫(kù)連接(ODBC)、微軟實(shí)時(shí)數(shù)據(jù)規(guī)格(RTD)、消息隊(duì)列、WindowsCommunication Foundation(WCF)、諸如 Profibus 和Modbus的工業(yè)總線協(xié)議、嵌入式系統(tǒng)的TCP/IP通信、非MS-Windows系統(tǒng)的TCP/IP、通過(guò)用戶(hù)接口呈現(xiàn)給人的數(shù)據(jù)、寫(xiě)入局部磁盤(pán)文件的數(shù)據(jù)、寫(xiě)入遠(yuǎn)程可訪問(wèn)磁盤(pán)文件的數(shù)據(jù)、專(zhuān)用格式、用戶(hù)定義的格式、通過(guò)擴(kuò)展至服務(wù)器增加的格式、電子郵件(E-Mail)、和短消息服務(wù)(SMS)消息格式。進(jìn)一步,在數(shù)據(jù)采集組件采集的數(shù)據(jù)可以是適于傳輸協(xié)議的格式。從數(shù)據(jù)發(fā)射組件發(fā)射的數(shù)據(jù)可以是適于傳輸協(xié)議的格式。在數(shù)據(jù)采集組件采集的數(shù)據(jù)和從數(shù)據(jù)發(fā)射組件發(fā)射的數(shù)據(jù)也可以是從以下選擇的格式插入語(yǔ)句(像LISP的)格式、超文本標(biāo)記語(yǔ)言(HTML)、可擴(kuò)展的標(biāo)記語(yǔ)言(XML)、Javakript Object Notation (JSON)、專(zhuān)用二進(jìn)制格式、用戶(hù)定義的文本格式、和通過(guò)擴(kuò)展服務(wù)器增加的格式。系統(tǒng)可以進(jìn)一步包含實(shí)施TCP/IP連接和服務(wù)器支持的一個(gè)或多個(gè)數(shù)據(jù)格式的應(yīng)用編程接口(API),該應(yīng)用編程接口有助于編程人員創(chuàng)建如上所述的連接。一個(gè)或多個(gè)以下平臺(tái)可以實(shí)施API :“C”編程語(yǔ)言、“C++”編程語(yǔ)言、Microsoft. Net編程環(huán)境、MicrosoftSilverlight RIA 框架、Adobe Flash RIA 框架、Adobe Air RIA 框架、編程語(yǔ)言支持 TCP/IP通信(包括任何腳本語(yǔ)言)、和RIA框架支持TCP/IP通信??梢岳脧囊韵逻x擇的RIA框架實(shí)施RIA Microsoft Silverlight、Adobe Air、和RIA框架支持TCP/IP通信。RIA框架可以包含支持使得第一長(zhǎng)命TCP/IP數(shù)據(jù)連接服務(wù)器從而接收數(shù)據(jù);接收來(lái)自服務(wù)器的數(shù)據(jù);和將數(shù)據(jù)通過(guò)第二 TCP/IP數(shù)據(jù)連接傳送至服務(wù)器。經(jīng)要求或通過(guò)訂閱可以從服務(wù)器接收數(shù)據(jù)。第一 TCP/IP數(shù)據(jù)連接和第二 TCP/IP數(shù)據(jù)連接可以是相同的連接。第二 TCP/IP數(shù)據(jù)連接可以是長(zhǎng)命的連接。第二 TCP/IP數(shù)據(jù)連接可以是短暫的連接。TCP/IP數(shù)據(jù)連接服務(wù)器可以是從以下選擇的協(xié)議API、如上所述的直接 TCP/IP 連接、HTTP、和 HTTPSo可以通過(guò)從以下選擇的一個(gè)或多個(gè)形式接收來(lái)自服務(wù)器的數(shù)據(jù),或可以將數(shù)據(jù)通過(guò)從以下選擇的一個(gè)或多個(gè)形式傳送至服務(wù)器插入語(yǔ)句(像LISP的)格式、超文本標(biāo)記語(yǔ)言(HTML)、可擴(kuò)展的標(biāo)記語(yǔ)言(XML)、Javakript Object Notation (JSON)、專(zhuān)用二進(jìn)制格式、用戶(hù)定義的文本格式、和通過(guò)擴(kuò)展服務(wù)器增加的格式。RIA框架可以進(jìn)一步包含支持將表示數(shù)據(jù)的圖形顯示呈現(xiàn)給用戶(hù)。圖形顯示可以包含從以下選擇的一個(gè)或多個(gè)圖形元件文本顯示、Slider控件、圖表、趨勢(shì)圖、CircularGauge控件、線性Gauge控件、按鈕、復(fù)選框、單選按鈕、進(jìn)度條、原始圖對(duì)象、由RIA框架支持的控件、用于擴(kuò)展RIA框架創(chuàng)建的控件、利用RIA框架實(shí)施的第三方控件、和定制的圖形元件。圖形顯示器的構(gòu)造信息可以保存在服務(wù)器上,和由服務(wù)器加載??梢詣?chuàng)建圖形元件,和在圖形顯示器內(nèi)修改圖形元件。圖形元件可以是由用戶(hù)可定制的定制圖形元件,其中定制可以保存在服務(wù)器??梢杂删幊倘藛T執(zhí)行定制,而無(wú)需對(duì)RIA框架中實(shí)施的應(yīng)用進(jìn)行修改。定制圖形元件可以供其他圖形顯示器的用戶(hù)使用。這些定制可以用于創(chuàng)建新的顯示、修改現(xiàn)有的顯示、所有除了由用戶(hù)界面應(yīng)用最初支持的圖形元件以外的顯示。圖形元件可以含有一個(gè)或多個(gè)用戶(hù)可修改的屬性,且圖形元件可以由編程人員選擇。用戶(hù)與圖形元件交互作用會(huì)引起用戶(hù)界面應(yīng)用將數(shù)據(jù)的修改發(fā)射給服務(wù)器??梢蕴峁﹥H有用戶(hù)模式不許用戶(hù)創(chuàng)建或修改圖形顯示,以及也提供僅有用戶(hù)模式不許用戶(hù)與圖形元件進(jìn)行交互作用。系統(tǒng)管理員可以選擇哪個(gè)用戶(hù)和用戶(hù)界面應(yīng)用的圖形顯示將以?xún)H有用戶(hù)模式和僅有讀取模式中的一個(gè)工作??梢砸笥脩?hù)識(shí)別其本身,和在哪里要求這種身份認(rèn)證,用戶(hù)界面應(yīng)用可以在僅有用戶(hù)模式和僅有讀取模式中至少一個(gè)工作。有利地,本發(fā)明的特征使得通過(guò)任何用戶(hù)RIA終端修改圖形顯示,一旦保存,結(jié)果變化就立刻可用于連接服務(wù)器的其他RIA終端。參考圖1,在一個(gè)實(shí)施例中,RIA 101使得數(shù)據(jù)成功與同時(shí)作為數(shù)據(jù)源和數(shù)據(jù)服務(wù)器100的程序直接連接。這種情況在數(shù)據(jù)源通過(guò)TCP/IP協(xié)議同時(shí)是原始數(shù)據(jù)的采集器和發(fā)射器的情況中發(fā)生。這種情況的一個(gè)實(shí)例是嵌在PLC內(nèi)的OPC-UA服務(wù)器。另一個(gè)實(shí)例是作為數(shù)據(jù)源和提供能夠提供定制TCP/IP接口的TCP/IP服務(wù)器的嵌入式設(shè)備。還是另一個(gè)實(shí)例是提供TCP/IP接口的股票市場(chǎng)數(shù)據(jù)饋送。參考圖2,在一個(gè)實(shí)施例中,另一個(gè)結(jié)構(gòu)包含單獨(dú)的數(shù)據(jù)源202和服務(wù)器203。該結(jié)構(gòu)通過(guò)將數(shù)據(jù)源202的數(shù)據(jù)協(xié)議轉(zhuǎn)換為可以由RIA 201處理的TCP/IP協(xié)議擴(kuò)展通信模型。通過(guò)使服務(wù)器203與不直接提供TCP/IP接口的數(shù)據(jù)源202進(jìn)行交互大大地?cái)U(kuò)大了數(shù)據(jù)源202的數(shù)目和類(lèi)型。參考圖3,在一個(gè)實(shí)施例中,服務(wù)器203可以同時(shí)管理多于一個(gè)個(gè)數(shù)據(jù)源302的連接和多余一個(gè)RIA 301的連接。這種復(fù)雜的結(jié)構(gòu)將數(shù)據(jù)源302和RIA 301的數(shù)據(jù)集成為可以在TCP/IP網(wǎng)絡(luò)的任何位置可訪問(wèn)的單個(gè)數(shù)據(jù)集。在另一個(gè)實(shí)施例中,系統(tǒng)可以包括與一個(gè)或多個(gè)數(shù)據(jù)源和/或一個(gè)或多個(gè)RIA互聯(lián)的多個(gè)服務(wù)器。參考圖4,在一個(gè)實(shí)施例中,示出了 RIA行為和控制流的方法。RIA不需要明確的停止準(zhǔn)則,盡管可以包括一個(gè)或多個(gè)準(zhǔn)則。當(dāng)用戶(hù)關(guān)閉含有RIA的web瀏覽器或頁(yè)面時(shí),就隱含地停止RIA。RIA同時(shí)遵循兩個(gè)控制流,可以是以單個(gè)程序線程交錯(cuò)或以單獨(dú)的程序線程實(shí)施。在第一控制流中,RIA嘗試創(chuàng)建和維持與服務(wù)器的連接,并響應(yīng)服務(wù)器可用數(shù)據(jù)的改變。RIA首先嘗試創(chuàng)建連接(步驟410)。如果連接失敗,就無(wú)限地再?lài)L試連接。如果連接成功(步驟40 ,那么RIA可以訂閱所有或部分的數(shù)據(jù)集(步驟40;3)?;蛘撸?wù)器可以基于連接隱含地使RIA訂閱數(shù)據(jù)集,在這種情況下可以跳過(guò)步驟403。除了訂閱之外, RIA也可以將其他信息傳送至服務(wù)器,從而構(gòu)造數(shù)據(jù)傳輸?shù)男袨?,例如在連接的更新之間或超時(shí)參數(shù)之間的最小時(shí)間。一旦已經(jīng)建立連接,RIA就等待來(lái)自服務(wù)器的數(shù)據(jù)改變的通知(步驟404)。如果已經(jīng)出現(xiàn)數(shù)據(jù)改變(步驟40 ,那么RIA以某方式處理數(shù)據(jù)(步驟407)。該處理可以是修改 RIA的內(nèi)部狀態(tài)、修改圖形表示、播放RIA設(shè)計(jì)人員確定的聲音或任何其他編程響應(yīng)。如果未出現(xiàn)數(shù)據(jù)改變,那么RIA檢查從而確定是否因?yàn)槟承┰蛞呀?jīng)失去與服務(wù)器的連接。如果還未失去與服務(wù)器的連接,那么RIAl返回等待出現(xiàn)數(shù)據(jù)改變(步驟404)。如果已經(jīng)失去與服務(wù)器的連接,那么RIA重新嘗試與服務(wù)器連接(步驟401)。同時(shí)利用步驟401到步驟407,RIA也可以接收用戶(hù)輸入,允許用戶(hù)生成可以反向傳播至服務(wù)器的數(shù)據(jù)改變。RIA等待以單獨(dú)的程序線程或以步驟401到步驟407多路復(fù)用的方式的用戶(hù)輸入(步驟420)。圖4示出了單獨(dú)的線程方法。如果已經(jīng)出現(xiàn)用戶(hù)輸入(步驟421),那么RIA可以嘗試將作為結(jié)果的數(shù)據(jù)傳送至服務(wù)器。通過(guò)首先檢查從而了解是否連接服務(wù)器(步驟422)。 如果連接服務(wù)器,那么RIA將新數(shù)據(jù)傳送至服務(wù)器(步驟42;3)。如果未連接服務(wù)器,那么 RIA等待更多的輸入(步驟420)。服務(wù)器連接的檢查(步驟42 可以隱含在嘗試傳送數(shù)據(jù)過(guò)程中,在這種情況中實(shí)際上組合步驟422和步驟423。RIA也可以是非交互性的,因此不可接受用戶(hù)輸入,在這種情形中可以省略步驟 420到步驟423。參考圖5,在一個(gè)實(shí)施例中,示出了數(shù)據(jù)服務(wù)器的操作方法。服務(wù)器可以同時(shí)采集來(lái)自零個(gè)或多個(gè)數(shù)據(jù)源的數(shù)據(jù),同時(shí)提供數(shù)據(jù)給零個(gè)或多個(gè)RIA連接。兩個(gè)主要控制流可以通過(guò)單獨(dú)的線程實(shí)施,或通過(guò)交錯(cuò)單個(gè)線程內(nèi)的兩個(gè)流控制路徑實(shí)施。為了與數(shù)據(jù)源交互,服務(wù)器必須首先創(chuàng)建與數(shù)據(jù)源的連接(步驟501)。通常,服務(wù)器發(fā)起與數(shù)據(jù)源的連接。在大多數(shù)情形中,數(shù)據(jù)源可以發(fā)起與服務(wù)器的連接。如果連接成功(步驟502),那么服務(wù)器開(kāi)始從數(shù)據(jù)源采集數(shù)據(jù)(步驟50;3)。如果連接失敗,那么服務(wù)器重新嘗試與數(shù)據(jù)源連接(步驟501)。如果數(shù)據(jù)源是與服務(wù)器連接的發(fā)起人,那么步驟 501和步驟502崩潰至單個(gè)等待狀態(tài),服務(wù)器被動(dòng)地等待數(shù)據(jù)源連接。數(shù)據(jù)采集(步驟503) 將遵循適合數(shù)據(jù)源的方法,并且不同于一個(gè)數(shù)據(jù)源到另一個(gè)數(shù)據(jù)源。如果來(lái)自數(shù)據(jù)源的新數(shù)據(jù)可用(步驟504),那么服務(wù)器將數(shù)據(jù)轉(zhuǎn)換為服務(wù)器的內(nèi)部數(shù)據(jù)表示。這使得服務(wù)器利用不同的數(shù)據(jù)表示聚集來(lái)自多個(gè)數(shù)據(jù)源的數(shù)據(jù)。在數(shù)據(jù)源、服務(wù)器、和RIA均使用相同的數(shù)據(jù)表示的簡(jiǎn)單情形中,可以省略步驟506。然后服務(wù)器嘗試將數(shù)據(jù)傳送至每個(gè)RIA。服務(wù)器可以首先創(chuàng)建連接RIA (步驟507)。如果連接一個(gè)或多個(gè)RIA,那么服務(wù)器將數(shù)據(jù)轉(zhuǎn)換為適合于RIA的數(shù)據(jù)表示(步驟508),并將數(shù)據(jù)傳送至連接的每個(gè)RIA (步驟509)。如果未連接RIA,那么服務(wù)器繼續(xù)從數(shù)據(jù)源采集數(shù)據(jù)(步驟50;3)。服務(wù)器無(wú)限地反復(fù)執(zhí)行該指令序列(步驟501-509)。當(dāng)無(wú)數(shù)據(jù)接收器連接需要來(lái)自該數(shù)據(jù)源的數(shù)據(jù)的服務(wù)器時(shí),服務(wù)器可以選擇不從數(shù)據(jù)源采集數(shù)據(jù)。與從數(shù)據(jù)源采集數(shù)據(jù)同時(shí)或交錯(cuò)進(jìn)行,服務(wù)器也管理來(lái)自RIA的連接。服務(wù)器等待來(lái)自RIA的連接(步驟520)。當(dāng)RIA嘗試連接服務(wù)器(步驟521)時(shí),服務(wù)器接收連接 (步驟522),繼續(xù)等待來(lái)自其他RIA的連接。當(dāng)?shù)却齊IA連接時(shí),服務(wù)器也必須確定是否已經(jīng)斷開(kāi)現(xiàn)有的RIA連接(步驟523)。如果已經(jīng)斷開(kāi)現(xiàn)有的RIA,那么從服務(wù)器中任何跟蹤移除RIA連接(步驟524),因此未來(lái)不會(huì)嘗試傳送數(shù)據(jù)至已斷開(kāi)的RIA。服務(wù)器無(wú)限地反復(fù)執(zhí)行該指令序列(步驟520-524)。當(dāng)RIA嘗試連接時(shí)(步驟52 ,服務(wù)器可以應(yīng)用接收準(zhǔn)則,以便于服務(wù)器可以因任何原因拒絕連接,例如認(rèn)證失敗或關(guān)于RIA實(shí)例的同時(shí)連接最大數(shù)的應(yīng)用服務(wù)器的限制。與從數(shù)據(jù)源采集數(shù)據(jù)和管理來(lái)自RIA的新連接同時(shí)或交錯(cuò)進(jìn)行,服務(wù)器也可以從已經(jīng)連接的RIA接收數(shù)據(jù)。服務(wù)器等待數(shù)據(jù)從RIA到達(dá)(步驟530)。當(dāng)新數(shù)據(jù)到達(dá)時(shí)(步驟531),服務(wù)器將該數(shù)據(jù)轉(zhuǎn)換為服務(wù)器的內(nèi)部數(shù)據(jù)格式(步驟53幻。然后,服務(wù)器確定當(dāng)前是否連接任一 RIA(步驟53 。然后,服務(wù)器將數(shù)據(jù)轉(zhuǎn)換為RIA適合接收的格式(步驟 534)和將數(shù)據(jù)傳送至每個(gè)當(dāng)前連接的RIA (步驟53 。服務(wù)器確定當(dāng)前是否連接需要改變信息的任一數(shù)據(jù)源(步驟536)。對(duì)于需要當(dāng)前連接服務(wù)器的信息的每個(gè)數(shù)據(jù)源,服務(wù)器將數(shù)據(jù)轉(zhuǎn)換為適合于數(shù)據(jù)源的格式(步驟537)和傳送數(shù)據(jù)(步驟538)。服務(wù)器無(wú)限地反復(fù)執(zhí)行該指令序列(步驟530-538)。
      對(duì)于服務(wù)器可以連接的每個(gè)數(shù)據(jù)源,可以重復(fù)地執(zhí)行步驟501到步驟509。對(duì)于服務(wù)器可以從其接收連接的每個(gè)RIA,可以重復(fù)地執(zhí)行步驟520到步驟524。對(duì)于每個(gè)連接的RIA可以重復(fù)執(zhí)行步驟530到步驟538,或多路復(fù)用以便于步驟530立刻同時(shí)等待所有連接的RIA,或這些選項(xiàng)的任意組合。理解的是,可以將在圖4和圖5中示出的方法改進(jìn)為包括額外的性能,包括RIA和數(shù)據(jù)服務(wù)器的明確停止條件;服務(wù)器能夠被動(dòng)等待數(shù)據(jù)源連接服務(wù)器;服務(wù)器能夠主動(dòng)地連接RIA ;服務(wù)器能夠同時(shí)管理多個(gè)數(shù)據(jù)源的連接;服務(wù)器能夠同時(shí)管理多個(gè)RIA的連接;和服務(wù)器能夠同時(shí)從多個(gè)RIA接收數(shù)據(jù)。參考圖6,在一個(gè)實(shí)施例中,數(shù)據(jù)服務(wù)器603能夠同時(shí)管理多個(gè)RIA601的連接有利地使得RIA 601通過(guò)服務(wù)器在彼此之間進(jìn)行通信。服務(wù)器將從RIA 601傳送至服務(wù)器603的任何信息視為就好像RIA 601是數(shù)據(jù)源,并將數(shù)據(jù)傳播至連接服務(wù)器且已經(jīng)訂閱數(shù)據(jù)的任何其他RIA 601。令人吃驚的是,這有效地創(chuàng)建進(jìn)行實(shí)時(shí)互相通信的RIA網(wǎng)絡(luò)。實(shí)際上,服務(wù)器603可以用于利用服務(wù)器支持的協(xié)議的任意組合能夠在許多客戶(hù)應(yīng)用之間通信。參考圖7,在一個(gè)實(shí)施例中,本發(fā)明的重要優(yōu)勢(shì)是能夠呈現(xiàn)出RIA 701中源于通過(guò)網(wǎng)絡(luò)無(wú)法訪問(wèn)的數(shù)據(jù)源的數(shù)據(jù)。在該實(shí)施例中,出現(xiàn)在電子表格應(yīng)用(例如MicrosoftExcel) 705中的數(shù)據(jù)可以通過(guò)局域網(wǎng)或廣域網(wǎng)進(jìn)行傳輸,這在本發(fā)明之前是不可能的。Microsoft Excel的數(shù)據(jù)傳輸限于DDE、RTD、或通過(guò)脆弱腳本進(jìn)行的ad-hoc通信。Microsoft Excel提供的協(xié)議,包括DDE、RTD、或通過(guò)脆弱腳本進(jìn)行的ad-hoc通信,無(wú)法與RIA進(jìn)行實(shí)時(shí)通信。本發(fā)明使得任何應(yīng)用通過(guò)任何TCP/IP網(wǎng)絡(luò)與電子表格數(shù)據(jù)進(jìn)行實(shí)時(shí)通信,極大地?cái)U(kuò)大了電子表格數(shù)據(jù)單獨(dú)應(yīng)用范疇。與RIA701進(jìn)行通信的組合能夠使多個(gè)用戶(hù)通過(guò)單個(gè)web瀏覽器連接與單個(gè)電子表格進(jìn)行交互作用。這個(gè)相同功能擴(kuò)展至服務(wù)器703支持的任何協(xié)議。當(dāng)在web瀏覽器內(nèi)運(yùn)行RIA時(shí),RIA必須利用web瀏覽器用于web瀏覽器。也就是說(shuō),用戶(hù)將URL輸入web瀏覽器,或點(diǎn)擊web頁(yè)面內(nèi)URL的鏈接,引起web瀏覽器加載含有RIA的網(wǎng)頁(yè)。Web瀏覽器為URL提供服務(wù),例如Microsoft IIS 或Apache 。當(dāng)加載和連接RIA時(shí),事件的指令序列是用戶(hù)選擇web瀏覽器內(nèi)的URL ;Web瀏覽器加載含有來(lái)自web服務(wù)器的RIA的頁(yè)面;Web瀏覽器起動(dòng)RIA ;RIA通過(guò)TCP/IP連接數(shù)據(jù)服務(wù)器;RIA訂閱數(shù)據(jù)服務(wù)器中的數(shù)據(jù);數(shù)據(jù)服務(wù)器開(kāi)始根據(jù)訂閱傳送數(shù)據(jù);數(shù)據(jù)服務(wù)器繼續(xù)直到RIA斷開(kāi)或其停止。該指令序列要求出現(xiàn)web服務(wù)器,并構(gòu)造為為RIA提供服務(wù)。方便的是使web服務(wù)器嵌入數(shù)據(jù)服務(wù)器內(nèi),從而降低系統(tǒng)組件的數(shù)量,和更加緊密地結(jié)合web功能和RIA的數(shù)據(jù)功能。本領(lǐng)域的技術(shù)人員將容易理解,可以執(zhí)行嵌入式瀏覽器或單獨(dú)的非瀏覽器主機(jī)(有時(shí)被稱(chēng)為RIA的脫離瀏覽器模式)的RIA,從而發(fā)起RIA會(huì)話。URL和web瀏覽器對(duì)用戶(hù)不可見(jiàn)。因此,可以改進(jìn)以上事件的指令序列的前三個(gè)步驟,從而反映這些候補(bǔ)實(shí)施例。在本發(fā)明中,RIA可以是利用能夠利用或生成數(shù)據(jù)的RIA框架書(shū)寫(xiě)的人和應(yīng)用。在一個(gè)實(shí)施例中,RIA顯示對(duì)用戶(hù)可見(jiàn)的實(shí)時(shí)數(shù)據(jù)??梢暬M件可以是Gauge控件、趨勢(shì)圖、進(jìn)度條、按鈕、圖像、和桌面應(yīng)用中常見(jiàn)的其他可視化表示。由于存在多種可能的表示,和特定數(shù)據(jù)集的最合適的表示將不同于另一個(gè)數(shù)據(jù)集的最合適的表示,RIA應(yīng)當(dāng)是用戶(hù)可設(shè)置的。這意味著可以為用戶(hù)呈現(xiàn)可視化配置工具,允許用戶(hù)使數(shù)據(jù)與可視化“對(duì)象”相關(guān)聯(lián)。這些可視化對(duì)象的集合可以一起布置成一般用于顯示相關(guān)信息的可視化“頁(yè)面”。然后,用戶(hù)可以創(chuàng)建多個(gè)頁(yè)面從而顯示不同組的相關(guān)信息。為了使用戶(hù)能夠定制數(shù)據(jù)可視化,RIA必須提供集成的或單獨(dú)的定制功能,一般被稱(chēng)為編輯器。編輯器提供用戶(hù)具體指定顯示實(shí)時(shí)數(shù)據(jù)的頁(yè)面的可視化設(shè)計(jì)的工具。編輯器也可以提供能夠設(shè)計(jì)專(zhuān)門(mén)版本的可視化對(duì)象。應(yīng)當(dāng)由web服務(wù)器存儲(chǔ)關(guān)于單獨(dú)的可視化對(duì)象的設(shè)計(jì)和可視化網(wǎng)頁(yè)的設(shè)計(jì)的信息。這使得用戶(hù)創(chuàng)建可以由在web服務(wù)器的具有必要訪問(wèn)權(quán)限的任何其他用戶(hù)查看的數(shù)據(jù)可視化。RIA與web服務(wù)器交互作用,從而存儲(chǔ)和檢索以諸如XML格式存儲(chǔ)的文檔??梢酝ㄟ^(guò)現(xiàn)有的實(shí)時(shí)數(shù)據(jù)連接或利用單獨(dú)的HTTP連接執(zhí)行該信息的傳輸。數(shù)據(jù)服務(wù)器內(nèi)的內(nèi)嵌 web服務(wù)器簡(jiǎn)化了該傳輸?shù)膶?shí)施,但不是必須的。在本發(fā)明的一個(gè)實(shí)施例中,實(shí)施本發(fā)明方法的系統(tǒng)包含以下的軟件應(yīng)用程序作為數(shù)據(jù)服務(wù)器的 Cogent DataHub (Cogent Real-Time Systems 公司);作為 web 服務(wù) ^ 的 Cogent DataHub (Cogent Real-Time Systems &司);# ^ RIA ^g ^ ^ Microsoft Sliverlight (微軟公司);作為 Microsoft Sliverlight 的協(xié)議實(shí)施層的 DataHub API for. Net (Cogent Real-Time Systems公司);作為顯示web瀏覽器中實(shí)時(shí)數(shù)據(jù)的RIA的 DataHub WebView (Cogent Real-Time Systems公司);作為可視化對(duì)象和網(wǎng)頁(yè)設(shè)計(jì)顯示的 IIeit^W DataHub WebView (Cogent Real-Time Systems )。此外,Cogent DataHub可以發(fā)送和接收來(lái)自多個(gè)數(shù)據(jù)源的數(shù)據(jù),包括作為電子表格應(yīng)用的Microsoft Excel (微軟公司);作為數(shù)據(jù)通信接口的OPC-DA服務(wù)器(不同的制造商);作為數(shù)據(jù)通信接口的OPC-UA(不同的制造商);作為數(shù)據(jù)通信接口的OPC Xi服務(wù)器 (不同的制造商);作為數(shù)據(jù)庫(kù)接口的ODBC服務(wù)器(不同的制造商)。參考圖8,在一個(gè)實(shí)施例中,依賴(lài)于特定的實(shí)施,零個(gè)或多個(gè)數(shù)據(jù)源連接Cogent DataHub。在本發(fā)明的可選實(shí)施例中,RIA框架可以是能夠支持持續(xù)網(wǎng)絡(luò)連接的任何RIA框架。諸如RIA框架的可選實(shí)例包括Adobe Flash 和Adobe Flex 。理解的是,其他的RIA 框架也可以是合適的。RIA可以是利用可以利用服務(wù)器的TCP/IP通信協(xié)議消耗或產(chǎn)生數(shù)據(jù)的RIA框架創(chuàng)建的任何應(yīng)用程序。RIA框架可以結(jié)合web瀏覽器,當(dāng)這種情況時(shí),例如,HTML5支持必要的TCP通信機(jī)制。數(shù)據(jù)服務(wù)器可以是旨在從數(shù)據(jù)源采集數(shù)據(jù)或本身用作數(shù)據(jù)源的任何應(yīng)用程序,只要數(shù)據(jù)服務(wù)器也提供構(gòu)造的RIA可以訪問(wèn)的TCP/IP通信方法。數(shù)據(jù)源可以是能夠生成可以轉(zhuǎn)換為適合于在服務(wù)器內(nèi)表示的格式的實(shí)時(shí)數(shù)據(jù)的任意應(yīng)用程序或系統(tǒng)。數(shù)據(jù)源也可以是能夠生成可以轉(zhuǎn)換為適合于在服務(wù)器內(nèi)表示的格式的非實(shí)時(shí)數(shù)據(jù)的任意應(yīng)用程序或系統(tǒng)。服務(wù)器可以反復(fù)地輪詢(xún)?cè)摂?shù)據(jù)或通過(guò)訂閱采集該數(shù)據(jù),從而將該數(shù)據(jù)提供給RIA,即使實(shí)在原始數(shù)據(jù)是非實(shí)時(shí)數(shù)據(jù)的情況中。例如,數(shù)據(jù)庫(kù)管理系統(tǒng) (DBMS) 一般是非實(shí)時(shí)的,但是可以反復(fù)地輪詢(xún)數(shù)據(jù),從而在服務(wù)器內(nèi)創(chuàng)建周期性更新的數(shù)據(jù)集,因此為RIA提供DBMS內(nèi)偽實(shí)時(shí)視點(diǎn)的數(shù)據(jù)。服務(wù)器和數(shù)據(jù)源可以組合成單個(gè)應(yīng)用,可以是OPC-UA服務(wù)器的情況,或提供通過(guò)TCP/IP連接訪問(wèn)其數(shù)據(jù)的嵌入式設(shè)備的情況。Web服務(wù)器可以是能夠?yàn)楹蠷IA的網(wǎng)頁(yè)提供服務(wù)的任何應(yīng)用程序??梢源婵梢曰虿豢梢栽趙eb瀏覽器內(nèi)運(yùn)行的RIA,使用利用可以公開(kāi)和與TCP/IP套接字交互的任何編譯或解釋計(jì)算機(jī)語(yǔ)言開(kāi)發(fā)的程序。相似地,代替RIA,也可以利用瀏覽器中、脫離瀏覽器的主機(jī)、或通過(guò)擴(kuò)展瀏覽器可直接執(zhí)行的代碼實(shí)施本發(fā)明的方法,因此瀏覽器、脫離瀏覽器的主機(jī)、或?yàn)g覽器擴(kuò)展可以公開(kāi)和與TCP/IP套接字交互,產(chǎn)生持續(xù)的網(wǎng)絡(luò)連接,和可選地,提供圖形性能。
      權(quán)利要求
      1.一種提供實(shí)時(shí)數(shù)據(jù)給富互聯(lián)網(wǎng)應(yīng)用,即RIA,的計(jì)算機(jī)實(shí)施方法,所述方法包含提供來(lái)自數(shù)據(jù)源的數(shù)據(jù);將來(lái)自所述數(shù)據(jù)源的數(shù)據(jù)傳播至服務(wù)器;在所述服務(wù)器采集數(shù)據(jù); 在所述RIA生成數(shù)據(jù);創(chuàng)建從所述服務(wù)器到所述RIA的第一持續(xù)連接;創(chuàng)建從所述RIA到所述服務(wù)器的第二持續(xù)連接;將數(shù)據(jù)從所述RIA通過(guò)所述第二持續(xù)連接傳播至所述服務(wù)器; 和和訂閱到所訂閱數(shù)據(jù)的RIA,其中所訂閱數(shù)據(jù)包含在所述服務(wù)器采集的數(shù)據(jù)的至少某些數(shù)據(jù),和其中所述服務(wù)器將所述訂閱的數(shù)據(jù)通過(guò)所述第一持續(xù)連接傳播至所述RIA。
      2.根據(jù)權(quán)利要求1所述的方法,進(jìn)一步包含將來(lái)自所述服務(wù)器的數(shù)據(jù)傳播至所述數(shù)據(jù)接收器。
      3.根據(jù)權(quán)利要求1所述的方法,其中所述第一持續(xù)連接和所述第二持續(xù)連接是由一個(gè)連接構(gòu)成。
      4.根據(jù)權(quán)利要求1所述的方法,其中所述數(shù)據(jù)源、數(shù)據(jù)接收器、和服務(wù)器是由至少一個(gè)組件構(gòu)成。
      5.根據(jù)權(quán)利要求1所述的方法,其中通過(guò)從包含以下的組中選擇的至少一個(gè)中間設(shè)備傳播所述數(shù)據(jù)軟件組件、硬件組件、和網(wǎng)絡(luò)。
      6.根據(jù)權(quán)利要求1所述的方法,其中數(shù)據(jù)項(xiàng)在所述RIA和所述服務(wù)器之間基于訂閱進(jìn)行傳播,以及其中響應(yīng)所述數(shù)據(jù)項(xiàng)的改變立刻傳播所述數(shù)據(jù)項(xiàng)。
      7.根據(jù)權(quán)利要求1所述的方法,其中所傳播的數(shù)據(jù)是從包含以下的組中選擇的數(shù)值數(shù)據(jù)、非數(shù)值數(shù)據(jù)、配置設(shè)置、和可執(zhí)行指令。
      8.根據(jù)權(quán)利要求1所述的方法,其中所述RIA基于所述數(shù)據(jù)執(zhí)行行為,其中所述行為是從包含以下的組中選擇的用戶(hù)顯示的可視化表示的修改、計(jì)算、新數(shù)據(jù)的生成、現(xiàn)有數(shù)據(jù)的改變、數(shù)據(jù)存儲(chǔ)、聲音指示、腳本執(zhí)行、數(shù)據(jù)至服務(wù)器的傳播、用戶(hù)可視化編程響應(yīng)、和非用戶(hù)可視化編程響應(yīng)。
      9.根據(jù)權(quán)利要求1所述的方法,其中在所述RIA生成的數(shù)據(jù)指示所述服務(wù)器執(zhí)行從包含以下的組中選擇的行為所述服務(wù)器內(nèi)數(shù)據(jù)的修改、所述數(shù)據(jù)傳播至連接所述服務(wù)器的數(shù)據(jù)接收器、腳本執(zhí)行、所述數(shù)據(jù)存儲(chǔ)至文件系統(tǒng)、生成新數(shù)據(jù)、新數(shù)據(jù)傳播至連接所述服務(wù)器的數(shù)據(jù)接收器、修改服務(wù)器配置、修改服務(wù)器行為、用戶(hù)可視化編程響應(yīng)、和非用戶(hù)可視化編程響應(yīng)。
      10.一種用于提供實(shí)時(shí)數(shù)據(jù)給富互聯(lián)網(wǎng)應(yīng)用,即RIA,的計(jì)算機(jī)系統(tǒng),所述計(jì)算機(jī)系統(tǒng)包含處理器、輸入裝置、顯示器、至少一個(gè)數(shù)據(jù)源、至少一個(gè)服務(wù)器;以及至少一個(gè)RIA,其中服務(wù)器包含用于從所述至少一個(gè)數(shù)據(jù)源采集數(shù)據(jù)的數(shù)據(jù)采集組件;用于發(fā)送數(shù)據(jù)至至少一個(gè)數(shù)據(jù)客戶(hù)端的數(shù)據(jù)發(fā)射組件。
      11.根據(jù)權(quán)利要求10所述的系統(tǒng),進(jìn)一步包含至少一個(gè)數(shù)據(jù)接收器。
      12.根據(jù)權(quán)利要求10所述的系統(tǒng),其中所述至少一個(gè)服務(wù)器進(jìn)一步包含用于修改由所述數(shù)據(jù)發(fā)射組件發(fā)射的由所述數(shù)據(jù)采集組件采集的數(shù)據(jù)形式的數(shù)據(jù)修改組件。
      13.根據(jù)權(quán)利要求10所述的系統(tǒng),其中所述至少一個(gè)服務(wù)器進(jìn)一步包含從包含以下的組中選擇的一個(gè)組件數(shù)據(jù)修改組件、數(shù)據(jù)創(chuàng)建組件;用戶(hù)界面組件;計(jì)算機(jī)文件系統(tǒng)交互組件;用于執(zhí)行可編程行為的腳本語(yǔ)言組件;用于接收HTTP請(qǐng)求的HTTP組件;用于交換和同步數(shù)據(jù)的同步組件;用于限制采集數(shù)據(jù)的速度的第一減速組件;用于限制發(fā)送數(shù)據(jù)的速度的第二減速組件;用于檢測(cè)與其他服務(wù)器失去連接和當(dāng)恢復(fù)連接時(shí)重新連接其他服務(wù)器的連接組件;用于冗余地連接相同或相似信息的多個(gè)其他服務(wù)器的冗余組件;和用于移動(dòng)在多個(gè)數(shù)據(jù)源之間的數(shù)據(jù)的橋接組件。
      14.根據(jù)權(quán)利要求10所述的系統(tǒng),其中所述數(shù)據(jù)采集組件以從包含以下的組中選擇的至少一個(gè)方式采集數(shù)據(jù)經(jīng)要求、通過(guò)訂閱、和通過(guò)觸發(fā)。
      15.根據(jù)權(quán)利要求10所述的系統(tǒng),其中所述數(shù)據(jù)發(fā)射組件以從包含以下的組中選擇的至少一個(gè)方式發(fā)射數(shù)據(jù)經(jīng)要求、通過(guò)訂閱、和通過(guò)觸發(fā)。
      16.根據(jù)權(quán)利要求10所述的系統(tǒng),其中所述至少一個(gè)數(shù)據(jù)源和所述至少一個(gè)數(shù)據(jù)服務(wù)器以至少一個(gè)計(jì)算機(jī)程序?qū)嵤?br> 17.根據(jù)權(quán)利要求10所述的系統(tǒng),其中以包含支持以下的RIA框架實(shí)施所述RIA:使第一長(zhǎng)命TCP/IP數(shù)據(jù)連接所述服務(wù)器從而接收數(shù)據(jù);接收來(lái)自所述服務(wù)器的數(shù)據(jù);和將數(shù)據(jù)通過(guò)第二 TCP/IP數(shù)據(jù)連接傳送至所述服務(wù)器。
      18.根據(jù)權(quán)利要求17所述的系統(tǒng),其中通過(guò)從包含以下的組中選擇的方法從所述服務(wù)器接收數(shù)據(jù)經(jīng)要求和通過(guò)訂閱。
      19.根據(jù)權(quán)利要求17所述的系統(tǒng),其中所述第一TCP/IP數(shù)據(jù)連接和第二 TCP/IP數(shù)據(jù)連接是由一個(gè)連接構(gòu)成的。
      20.根據(jù)權(quán)利要求17所述的系統(tǒng),其中所述第二TCP/IP數(shù)據(jù)連接是從包含以下的組中選擇的長(zhǎng)命的連接和短暫的連接。
      21.根據(jù)權(quán)利要求17所述的系統(tǒng),其中所述RIA框架進(jìn)一步包含用于呈現(xiàn)表示所述數(shù)據(jù)的圖形顯示的支持。
      22.根據(jù)權(quán)利要求17所述的系統(tǒng),其中所述圖形顯示包含至少一個(gè)圖形元件,其中所述至少一個(gè)圖形元件是定制圖形元件,其中所述定制圖形元件是由編程人員定制的,以及其中所述定制是對(duì)RIA框架中實(shí)施的應(yīng)用不進(jìn)行修改。
      23.一種存儲(chǔ)指令的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),當(dāng)在一個(gè)或多個(gè)計(jì)算機(jī)上執(zhí)行指令時(shí),會(huì)引起計(jì)算機(jī)執(zhí)行提供實(shí)時(shí)數(shù)據(jù)給富互聯(lián)網(wǎng)應(yīng)用(RIA)的方法,所述方法包含提供來(lái)自數(shù)據(jù)源的數(shù)據(jù);將來(lái)自所述數(shù)據(jù)源的數(shù)據(jù)傳播至服務(wù)器;在所述服務(wù)器采集數(shù)據(jù);在所述RIA生成數(shù)據(jù);創(chuàng)建從所述服務(wù)器到所述RIA的第一持續(xù)連接;創(chuàng)建從所述RIA到所述服務(wù)器的第二持續(xù)連接;將數(shù)據(jù)從所述RIA通過(guò)所述第二持續(xù)連接傳播至所述服務(wù)器;和和訂閱到所訂閱數(shù)據(jù)的RIA,其中所訂閱數(shù)據(jù)包含在所述服務(wù)器采集的數(shù)據(jù)的至少某些數(shù)據(jù),和其中所述服務(wù)器將所述訂閱的數(shù)據(jù)通過(guò)所述第一持續(xù)連接傳播至所述RIA。
      24.一種具有由計(jì)算機(jī)執(zhí)行權(quán)利要求1到權(quán)利要求9中任一個(gè)所述的方法的語(yǔ)句和指令的計(jì)算機(jī)可讀存儲(chǔ)器。
      全文摘要
      本發(fā)明公開(kāi)了提供實(shí)時(shí)數(shù)據(jù)給富互聯(lián)網(wǎng)應(yīng)用的系統(tǒng)和方法。RIA框架的圖形特征和聯(lián)網(wǎng)特征連同至少一個(gè)實(shí)時(shí)數(shù)據(jù)服務(wù)器提供web瀏覽器的低延遲實(shí)時(shí)數(shù)據(jù)應(yīng)用。在一個(gè)實(shí)施例中,在數(shù)據(jù)源生成數(shù)據(jù),數(shù)據(jù)傳播至服務(wù)器,并在服務(wù)器采集數(shù)據(jù)。創(chuàng)建從RIA到服務(wù)器的持續(xù)連接,RIA訂閱數(shù)據(jù),其中所訂閱的數(shù)據(jù)包含在服務(wù)器采集的至少某些數(shù)據(jù),其中當(dāng)在服務(wù)器采集數(shù)據(jù)時(shí),服務(wù)器將所訂閱的數(shù)據(jù)通過(guò)持續(xù)連接傳播至RIA。
      文檔編號(hào)H04L12/16GK102598584SQ201180004237
      公開(kāi)日2012年7月18日 申請(qǐng)日期2010年10月15日 優(yōu)先權(quán)日2009年10月16日
      發(fā)明者A·托馬斯 申請(qǐng)人:瑞爾創(chuàng)新國(guó)際公司
      網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1