中文字幕无码日韩视频无码三区

涉及批量遠程調用的數據處理方法及裝置的制造方法

文檔序號:10555709閱讀:172來源:國知局
涉及批量遠程調用的數據處理方法及裝置的制造方法
【專利摘要】本發明提供了一種涉及批量遠程調用的數據處理方法及裝置,其中,該方法包括:對無需遠程調用的數據進行處理;按如下方式對需要遠程調用的數據進行處理:無需等待遠程調用完成的數據處理結果接收完畢,連續將需要遠程調用的數據向遠程設備發送,記錄每次的發送狀態和位置,以及每次的發送序號與無需遠程調用的數據的位置之間的第一對應關系;無需等待需要遠程調用的數據發送完畢,連續接收遠程設備的數據處理結果,記錄每次的接收狀態和位置,以及每次的發送序號與數據處理結果之間的第二對應關系;根據該第一和第二對應關系,將遠程設備的數據處理結果與無需遠程調用的數據處理結果進行拼接。上述技術方案提高了涉及批量遠程調用數據處理的效率。
【專利說明】
涉及批量遠程調用的數據處理方法及裝置
技術領域
[0001] 本發明涉及數據處理技術領域,特別涉及一種涉及批量遠程調用的數據處理方法 及裝置。
【背景技術】
[0002] 目前,涉及批量遠程調用的數據處理存在效率低的問題,以數據迀移中遇到的加 密機調用為例進行說明如下:
[0003] 核心銀行系統采用主機平臺,在核心銀行系統升級為新一代的核心銀行系統時, 需要將舊系統中數據進行轉換并導入新系統,這個過程稱為數據迀移。數據迀移面對的數 據量以億計,并且其中有些數據需要調用遠程設備進行處理,以密文字段為例,需要使用加 密設備進行密文轉換,從而適用于新系統的加密設備。而且加密設備部署會不在一個機房, 甚至不在一個城市。
[0004]數據迀移使用批量逐條數據處理的方式進行處理,處理過程中和遠程設備使用 TCP/IP連接,然后將返回字段填寫到轉換后的數據中。
[0005] 如果加密設備本地部署時,從批量調用加密機到加密機返回轉換后的數據,不會 超過0.5毫秒,每秒鐘可以處理2000-3000筆。但是如果加密設備部署在上海,而主機系統在 北京時,從批量調用加密機到加密機返回要達到50毫秒,每秒鐘僅有20多筆交易,每小時也 只能處理不到10萬筆交易。要在有限的時間(比如2個小時)處理5百萬筆交易,采用并行處 理的方式,需要30多個并行進程,這么多進程的配置對于主機來說是很不方便的,對于加密 機來說,連接數過多也會導致整體性能下降。
[0006] 解決上述遠程調用問題,可以采用以下三種方法:
[0007] A.采用多個作業并行的方法,提高調用效率。
[0008] B.在開放平臺使用一個發送線程、一個接收線程處理。
[0009] C.將被調用設備部署在本地。
[0010] 然而,在實際工作中,上述三種方法均存在以下問題:
[0011] 采用上述方法A多個作業并行的方法,勢必增加大量的作業配置、調度工作,增加 生產運行的難度。
[0012] 采用上述方法B,在開放平臺使用一個發送線程、一個接收線程處理。對于主機平 臺無法使用。
[0013] 采用上述方法C,將被調用設備部署在本地。有時限于環境的安排,無法做到。如果 必須做到,成本也很高。對于數據迀移來說,原來的數據基本都是一個分行一個環境,分散 布局,將分散的設備集中起來,將增加很多成本。
[0014] 綜上,目前涉及批量遠程調用的數據處理方案不僅效率低,而且難度大、無法實施 和成本高。

【發明內容】

[0015] 本發明實施例提供了一種涉及批量遠程調用的數據處理方法,用以提高涉及批量 遠程調用的數據處理的效率,降低實施難度和成本,該方法包括:
[0016] 對待處理數據中無需遠程調用的數據進行處理;
[0017] 在非阻塞模式下,按如下方式對待處理數據中需要遠程調用的數據進行處理:
[0018] 根據發送狀態和發送位置,在無需等待遠程調用完成的數據處理結果接收完畢的 模式下,連續將需要遠程調用的數據向遠程設備發送,記錄每次的發送狀態和發送位置,以 及每次的發送序號與無需遠程調用的數據的位置之間的第一對應關系;
[0019] 根據接收狀態和接收位置,在無需等待需要遠程調用的數據發送完畢的模式下, 連續接收遠程設備的數據處理結果,記錄每次的接收狀態和接收位置,以及每次的發送序 號與遠程設備的數據處理結果之間的第二對應關系;
[0020] 根據第一對應關系和第二對應關系,將遠程設備的數據處理結果與無需遠程調用 的數據處理結果進行拼接。
[0021] 本發明實施例還提供了一種涉及批量遠程調用的數據處理裝置,用以提高涉及批 量遠程調用的數據處理的效率,降低實施難度和成本,該裝置包括:
[0022] 非遠程調用數據處理模塊,用于對待處理數據中無需遠程調用的數據進行處理; [0023]遠程調用數據處理模塊,用于在非阻塞模式下,對待處理數據中需要遠程調用的 數據進行處理;遠程調用數據處理模塊包括:
[0024] 遠程調用數據發送模塊,用于根據發送狀態和發送位置,在無需等待遠程調用完 成的數據處理結果接收完畢的模式下,連續將需要遠程調用的數據向遠程設備發送,記錄 每次的發送狀態和發送位置,以及每次的發送序號與無需遠程調用的數據的位置之間的第 一對應關系;
[0025] 遠程調用數據處理結果接收模塊,用于根據接收狀態和接收位置,在無需等待需 要遠程調用的數據發送完畢的模式下,連續接收遠程設備的數據處理結果,記錄每次的接 收狀態和接收位置,以及每次的發送序號與遠程設備的數據處理結果之間的第二對應關 系;
[0026] 數據拼接模塊,用于根據第一對應關系和第二對應關系,將遠程設備的數據處理 結果與無需遠程調用的數據處理結果進行拼接。
[0027] 與現有技術相比較,本發明實施例提供的技術方案,首先,對待處理數據中無需遠 程調用的數據進行處理;其次,在非阻塞模式下,對待處理數據中需要遠程調用的數據進行 處理,最后,將遠程設備的數據處理結果與無需遠程調用的數據處理結果進行拼接。其中, 對待處理數據中需要遠程調用的數據進行處理的優點如下:
[0028] 將需要遠程調用的數據向遠程設備發送和接收遠程設備的數據處理結果的步驟 獨立,可以各自使用自己的數據處理區,保留各自上次數據的處理位置和處理狀態,使得下 次處理時仍然可以繼續上次的處理,就如同從來沒有中斷過一樣;
[0029] 另外,將需要遠程調用的數據向遠程設備發送時,不需要等待遠程調用完成的數 據處理結果接收完畢;接收所述遠程設備的數據處理結果時,也不需要等待需要遠程調用 的數據發送完畢,因此,批量循環執行發送和接收的過程,這樣就實現了數據持續發送和接 收處理,發送和接收處理不等待,并且互不影響。
[0030] 綜上,上述技術方案提高了涉及批量遠程調用的數據處理的效率,降低實施難度 和成本。
【附圖說明】
[0031] 此處所說明的附圖用來提供對本發明的進一步理解,構成本申請的一部分,并不 構成對本發明的限定。在附圖中:
[0032] 圖1是在阻塞模式下的遠程調用方案的示意圖;
[0033] 圖2是在非阻塞模式下開放式平臺虛擬雙線程的遠程調用方案的示意圖;
[0034]圖3是本發明實施例中涉及批量遠程調用的數據處理方法的流程示意圖;
[0035] 圖4是本發明另一實施例中涉及批量遠程調用的數據處理方法的流程示意圖;
[0036] 圖5是與現有技術方案相比較,應用本發明實施例提供的技術方案,網絡上數據請 求變化的對比示意圖;
[0037] 圖6是本發明實施例中涉及批量遠程調用的數據處理裝置的結構示意圖。
【具體實施方式】
[0038]為使本發明的目的、技術方案和優點更加清楚明白,下面結合實施方式和附圖,對 本發明做進一步詳細說明。在此,本發明的示意性實施方式及其說明用于解釋本發明,但并 不作為對本發明的限定。
[0039] 在此先介紹發明人提出本申請時發現的技術問題以及如何克服這些技術問題的。
[0040] 目前,TCPIP連接處理技術SOCKET有阻塞和非阻塞模式,可以利用阻塞和非阻塞模 式完成遠程調用:阻塞模式是等處理完成后,SOCKET才返回程序繼續向下執行,而非阻塞模 式則不需要等待處理完成SOCKET即返回程序。
[0041] 首先,發明人考慮到在阻塞模式下,涉及批量遠程調用的數據處理方法的問題,圖 1是在阻塞模式下的遠程調用示意圖,如圖1所示,這種方法在【背景技術】部分已經做過介紹, 存在批量遠程調用的數據處理效率低的技術問題。
[0042]其次,發明人考慮到對于開放式平臺,在SOCKET非阻塞模式下,可以采用啟動發送 線程和接收線程進行處理,具體方案流程圖如圖2所示,兩個線程各自不需要等待處理的過 程。但主機沒有類似開放式平臺線程的技術,因此,在主機平臺下,采用啟動發送線程和接 收線程進行處理,無法實現。
[0043]因此,發明人提出了一種新的設計批量遠程調用的數據處理方法,在首先開啟非 阻塞模式下,批量使用發送模塊和接收模塊分別處理發送邏輯和接收邏輯。批量循環執行 這兩個模塊,兩個模塊各自使用自己的數據處理區,保留各自模塊上次數據的處理位置和 處理狀態,使得下次處理時仍然可以繼續上次的處理,就如同從來沒有中斷過一樣。這樣兩 個處理邏輯就可以在各自的數據區完成各自持續的數據發送和接收處理。
[0044] 本文提到的發送、發送模塊和發送邏輯即為下文提到的將需要遠程調用的數據向 遠程設備發送的體現,接收、接收模塊和接收邏輯即為下文提到的接收所述遠程設備的數 據處理結果的體現。下面對本發明實施提供的技術方案進行詳細介紹。
[0045] 圖3是本發明實施例中涉及批量遠程調用的數據處理方法的流程示意圖,如圖3所 示,該方法包括如下步驟:
[0046]步驟101:對待處理數據中無需遠程調用的數據進行處理;
[0047]步驟102:在非阻塞模式下,按如下方式對待處理數據中需要遠程調用的數據進行 處理:
[0048]根據發送狀態和發送位置,在無需等待遠程調用完成的數據處理結果接收完畢的 模式下,連續將需要遠程調用的數據向遠程設備發送,記錄每次的發送狀態和發送位置,以 及每次的發送序號與無需遠程調用的數據的位置之間的第一對應關系;
[0049]根據接收狀態和接收位置,在無需等待需要遠程調用的數據發送完畢的模式下, 連續接收遠程設備的數據處理結果,記錄每次的接收狀態和接收位置,以及每次的發送序 號與遠程設備的數據處理結果之間的第二對應關系;
[0050] 步驟103:根據第一對應關系和第二對應關系,將遠程設備的數據處理結果與無需 遠程調用的數據處理結果進行拼接。
[0051] 與現有技術相比較,本發明實施例提供的技術方案,首先,對待處理數據中無需遠 程調用的數據進行處理;其次,在非阻塞模式下,對待處理數據中需要遠程調用的數據進行 處理,最后,將遠程設備的數據處理結果與無需遠程調用的數據處理結果進行拼接。其中, 對待處理數據中需要遠程調用的數據進行處理的優點如下:
[0052]將需要遠程調用的數據向遠程設備發送和接收遠程設備的數據處理結果的步驟 獨立,可以各自使用自己的數據處理區,保留各自上次數據的處理位置和處理狀態,使得下 次處理時仍然可以繼續上次的處理,就如同從來沒有中斷過一樣;
[0053]另外,將需要遠程調用的數據向遠程設備發送時,不需要等待遠程調用完成的數 據處理結果接收完畢;接收所述遠程設備的數據處理結果時,也不需要等待需要遠程調用 的數據發送完畢,因此,批量循環執行發送和接收的過程,這樣就實現了數據持續發送和接 收處理,發送和接收處理不等待,并且互不影響。
[0054]綜上,上述技術方案提高了涉及批量遠程調用的數據處理的效率,降低實施難度 和成本。
[0055] 上述步驟102中將需要遠程調用的數據向遠程設備發送只是發送,不等待遠程調 用完成的數據處理結果接收完成,接收遠程設備的數據處理結果只是接收,和將需要遠程 調用的數據向遠程設備發送不是緊密的邏輯關系,關鍵的是:對于數據處理,將發送和接收 在一個批量處理循環里完成,但發送和接收又不存在直接的邏輯關系。
[0056]圖4是本發明另一實施例中涉及批量遠程調用的數據處理方法的流程示意圖;本 實施例以數據迀移中遇到的加密機調用為例,以便于理解本發明如何實施。下面結合附圖4 進行說明。
[0057]在一個實施例中,待處理數據包括:非密文數據和密文數據;
[0058]對待處理數據中無需遠程調用的數據進行處理,包括:對待處理數據中非密文數 據進行處理;
[0059]在非阻塞模式下,按如下方式對待處理數據中需要遠程調用的數據進行處理,包 括:在非阻塞模式下,按如下方式對待處理數據中密文數據進行處理;
[0060] 在非阻塞模式下,按如下方式對待處理數據中密文數據進行處理,包括:
[0061] 根據發送狀態和發送位置,在無需等待遠程加密設備轉換完成后的密文數據接收 完畢的模式下,連續將待轉換密文數據向遠程加密設備發送,記錄每次的發送狀態和發送 位置,以及每次的發送序號與非密文數據的位置之間的第三對應關系;
[0062]根據接收狀態和接收位置,在無需等待待轉換密文數據發送完畢的模式下,連續 接收轉換完成后的密文數據,記錄每次的接收狀態和接收位置,以及每次的發送序號與轉 換完成后的密文數據之間的第四對應關系;
[0063]根據第一對應關系和第二對應關系,將遠程設備的數據處理結果與無需遠程調用 的數據處理結果進行拼接,包括:
[0064]根據第三對應關系和第四對應關系,將轉換完成后的密文數據與已處理完成后的 非密文數據進行拼接。
[0065]具體實施時,在處理待處理數據中需要遠程調用處理的數據過程中的數據定義如 下表1和表2所不:
[0066] 1、發送數據區相關定義
[0071] 表2
[0072] 在一個實施例中,根據發送狀態和發送位置,在無需等待遠程調用完成的數據處 理結果接收完畢的模式下,連續將需要遠程調用的數據向遠程設備發送,記錄每次的發送 狀態和發送位置,包括:
[0073] 將待處理數據中需要遠程調用的數據放入總的數據發送區,設置需要遠程調用數 據的發送狀態和發送位置;
[0074] 將總的數據發送區中預設長度和發送位置的需要遠程調用的數據放入臨時數據 區進行發送;
[0075] 查詢需要遠程調用數據的發送狀態,如果當前需要遠程調用數據發送完成,修改 發送狀態為完成,繼續發送下一條待處理數據中需要遠程調用的數據,如果未發送完成,修 改發送狀態和發送位置,根據發送狀態和發送位置,繼續發送本條待處理數據中需要遠程 調用的數據。
[0076] 具體實施時,將待轉換密文數據向遠程加密設備發送,記錄每次的發送狀態和發 送位置的步驟可以包括如下:
[0077] I )、讀取一條數據,將密文部分(待轉換密文數據)放入WK-SEND-BUF,設置WK-SEND-POS為1,設置概-SEND-LEN為實際要發的數據;
[0078] 2)、將數據從開始位置WK-SEND-P0S取WK-SEND-LEN長度放入HSM-SEND-TXT進行發 送,發送完畢后,查看實際發送的數據長度,修改概-SEND-POS和概-SEND-LEN;
[0079] 3)、如果已經發送完成(實際發送的數據長度= WK-SEND-LEN),置發送完畢狀態, 下次發送循環到來時,從1)開始;
[0080] 4)、如果沒有發送完成,下個發送循環到來時,從2)開始。
[0081] 在一個實施例中,根據接收狀態和接收位置,在無需等待需要遠程調用的數據發 送完畢的模式下,連續接收遠程設備的數據處理結果,記錄每次的接收狀態和接收位置,包 括:
[0082]如果接收遠程設備處理完成后數據的長度等于包頭長度,設置接收包頭已完成; [0083]如果包頭接收已完成,開始接收并解析包體數據,設置解析包體已開始;如果包頭 接收未完成,將接收到的數據減去包頭數據,減去包頭后的數據作為包體數據;
[0084] 將包體數據存入總的數據接收區中預設接收位置,修改接收狀態和接收位置,如 果當前遠程設備處理完成后的數據接收完畢,設置接收狀態為完成。
[0085] 具體實施時,接收轉換完成后的密文數據,記錄每次的接收狀態和接收位置的步 驟可以包括如下:
[0086] 1)、從SOCKET接收一條數據,如果接收數據長度達到包頭長度(本發明中,包頭僅 是兩個字節的數據長度,即便如此,也有無法一次接收兩個字節的場景),則設置接收包長 度概-SEND-LEN。設置包頭接收完畢標識,下個循環從2)開始,否則仍然從1)開始;
[0087] 2)、將接收到的數據減去包頭數據(如果包頭已完成,則不需要),如果包體解析已 開始,則從3)開始,設置包體已開始標志,然后將概-RECV-POS設置為1.
[0088] 3)、將包體數據存入WK-RECV-BUF從WK-RECV-P0S開始的位置,將WK-RECV-P0S增加 接收到的數據長度(去掉包頭);
[0089] 4)、如果已經接收完畢(WK-RECV-P0S=WK-RECV-LEN+1),則設置接收完畢標志,下 次循環從1)。
[0090] 在一個實施例中,存儲每次的發送序號與無需遠程調用的數據的位置之間的第一 對應關系的文件格式為:
[0091] 存儲所述發送序號的序號區、無需遠程調用數據的數據區和遠程設備的數據處理 結果放置區;
[0092] 存儲每次的發送序號與遠程設備的數據處理結果之間的第二對應關系的文件格 式為:
[0093] 存儲所述發送序號的序號區、遠程設備的數據處理結果放置區。
[0094]具體實施時,為了實現數據拼接,需要注意以下三點:
[0095] A.數據發送時,包體中首先要包含序號區,在序號區中按照處理條數逐筆累加。同 時,將被處理的數據按照下表3格式保存為文件A:
[0098] B.在接收時,將序號和轉換后的數據一并保存為文件B,如下表4所示:
[0103] 表5
[0104] 圖5是與現有技術方案相比較,應用本發明實施例提供的技術方案,網絡上數據請 求對比示意圖,如圖5所示,發送邏輯負責將密文數據發送出去,并且記錄發送序號和非密 文數據的對照關系。接收邏輯負責將加密機處理完的密文數據和發送序號的對照關系。兩 個處理模塊就像兩個零件生產線。由圖5可知,本發明實施例提供的技術方案大大提供高涉 及遠程調用數據處理的效率。
[0105] 具體實施時,在上述步驟103中,在每條數據(密文部分)在傳輸過程中,可能會被 網絡拆包,接收時,根據包頭,將整條數據接收完成后,寫入密文轉換后數據文件。在所有數 據處理完成后,對非密文部分和密文轉換后部分進行拼接,拼接后的數據才是完整數據,可 以迀入新系統。
[0106] 基于同一發明構思,本發明實施例中還提供了涉及批量遠程調用的數據處理裝 置,如下面的實施例所述。由于涉及批量遠程調用的數據處理裝置解決問題的原理與涉及 批量遠程調用的數據處理方法相似,因此涉及批量遠程調用的數據處理裝置的實施可以參 見涉及批量遠程調用的數據處理方法的實施,重復之處不再贅述。以下所使用的,術語"單 元"或者"模塊"可以實現預定功能的軟件和/或硬件的組合。盡管以下實施例所描述的裝置 較佳地以軟件來實現,但是硬件,或者軟件和硬件的組合的實現也是可能并被構想的。
[0107] 圖6是本發明實施例中涉及批量遠程調用的數據處理裝置的結構示意圖,如圖6所 示,該裝置包括:
[0108] 非遠程調用數據處理模塊02,用于對待處理數據中無需遠程調用的數據進行處 理;
[0109] 遠程調用數據處理模塊04,用于在非阻塞模式下,對待處理數據中需要遠程調用 的數據進行處理;遠程調用數據處理模塊04包括:
[0110] 遠程調用數據發送模塊041,用于根據發送狀態和發送位置,在無需等待遠程調用 完成的數據處理結果接收完畢的模式下,連續將需要遠程調用的數據向遠程設備發送,記 錄每次的發送狀態和發送位置,以及每次的發送序號與無需遠程調用的數據的位置之間的 第一對應關系;
[0111] 遠程調用數據處理結果接收模塊042,用于根據接收狀態和接收位置,在無需等待 需要遠程調用的數據發送完畢的模式下,連續接收遠程設備的數據處理結果,記錄每次的 接收狀態和接收位置,以及每次的發送序號與遠程設備的數據處理結果之間的第二對應關 系;
[0112] 數據拼接模塊06,用于根據第一對應關系和第二對應關系,將遠程設備的數據處 理結果與無需遠程調用的數據處理結果進行拼接。
[0113] 圖4中的接收模塊即為遠程調用數據處理結果接收模塊042,另外本發明實施例中 提到的發送模塊、發送邏輯和發送均可以指遠程調用數據發送模塊041,接收模塊、接收邏 輯和接收均可以指遠程調用數據處理結果接收模塊042。
[0114] 在一個實施例中,所述待處理數據包括:非密文數據和密文數據;
[0115]非遠程調用數據處理模塊具體用于:對待處理數據中非密文數據進行處理;
[0116]遠程調用數據處理模塊具體用于:在非阻塞模式下,對待處理數據中密文數據進 行處理;
[0117] 遠程調用數據發送模塊具體用于:根據發送狀態和發送位置,在無需等待遠程加 密設備轉換完成后的密文數據接收完畢的模式下,連續將待轉換密文數據向遠程加密設備 發送,記錄每次的發送狀態和發送位置,以及每次的發送序號與非密文數據的位置之間的 第三對應關系;
[0118] 遠程調用數據處理結果接收模塊具體用于:根據接收狀態和接收位置,在無需等 待待轉換密文數據發送完畢的模式下,連續接收轉換完成后的密文數據,記錄每次的接收 狀態和接收位置,以及所述每次的發送序號與轉換完成后的密文數據之間的第四對應關 系;
[0119]數據拼接模塊具體用于:根據所述第三對應關系和第四對應關系,將轉換完成后 的密文數據與已處理完成后的非密文數據進行拼接。
[0120] 在一個實施例中,遠程調用數據發送模塊041具體用于:
[0121] 將待處理數據中需要遠程調用的數據放入總的數據發送區,設置需要遠程調用數 據的發送狀態和發送位置;
[0122] 將總的數據發送區中預設長度和發送位置的需要遠程調用的數據放入臨時數據 區進行發送;
[0123] 查詢需要遠程調用數據的發送狀態,如果當前需要遠程調用數據發送完成,修改 發送狀態為完成,繼續發送下一條待處理數據中需要遠程調用的數據,如果未發送完成,修 改發送狀態和發送位置,根據發送狀態和發送位置,繼續發送本條待處理數據中需要遠程 調用的數據。
[0124] 在一個實施例中,遠程調用數據處理結果接收模塊042具體用于:
[0125] 如果接收遠程設備處理完成后數據的長度等于包頭長度,設置接收包頭已完成;
[0126] 如果包頭接收已完成,開始接收并解析包體數據,設置解析包體已開始;如果包頭 接收未完成,將接收到的數據減去包頭數據,減去包頭后的數據作為包體數據;
[0127] 將包體數據存入總的數據接收區中預設接收位置,修改接收狀態和接收位置,如 果當前遠程設備處理完成后的數據接收完畢,設置接收狀態為完成。
[0128] 在一個實施例中,存儲每次的發送序號與無需遠程調用的數據的位置之間的第一 對應關系的文件格式為:
[0129] 存儲所述發送序號的序號區、無需遠程調用數據的數據區和遠程設備的數據處理 結果放置區;
[0130] 存儲每次的發送序號與遠程設備的數據處理結果之間的第二對應關系的文件格 式為:
[0131]存儲所述發送序號的序號區、遠程設備的數據處理結果放置區。
[0132] 另外,本發明實施例的架構需要做以下工作:
[0133] A.不用改變原有加密機的位置,只要網絡聯通即可;
[0134] B.可以開發批量模塊,用于批量執行發送和接收;
[0135] C.可以適量配置作業數(加密機的吞吐量/每個作業的處理速度);
[0136] D.可以開發拼接作業,用于將遠程設備的數據處理結果與無需遠程調用的數據處 理結果進行拼接。
[0137] 本發明實施例在主機上一個處理程序中,實現發送和接收兩個互不影響的處理虛 擬。發送模塊和接收模塊盡量少地占用時間,處理不等待。兩個模塊使用數據工作區拼接上 一次和本次循環處理的連續性,使得各個模塊能夠不受切換的影響。
[0138] 本發明實施例實際是充分利用了網絡傳輸時間和遠程設備的處理能力進行處理, 不再產生單純的等待。所以效率上的提高取決于不使用本發明的網絡傳輸時間。網絡傳輸 時間越長,提高的效果就越明顯,或者說,網絡的傳輸時間對本發明中的批量效率不產生影 響。
[0139] 經過測試環境模擬驗證及投產實際運行驗證,本發明提供了批量遠程數據處理的 高效合理解決方案,既對環境和配置沒有額外的要求,又保證了處理數據的完整性;對于遠 程的設備的距離再無要求,批量處理較本地部署處理結束時間僅僅是延遲了最后一筆的信 號在信道里傳送的時間,對于從上海到北京的距離來說約為50毫秒。
[0140]根據模擬測試結果,對500萬筆交易處理的時間如下表6所示:
[0142] 表6
[0143] 注1:由于處理效率能夠被時間窗口接受,所以最終作數據迀移時也只是使用了一 臺加密機,最終迀移也只采用了 5個并行作業。
[0144] 關聯指標說明:加密機處理極限為9000筆/秒。
[0145] 顯然,本領域的技術人員應該明白,上述的本發明實施例的各模塊或各步驟可以 用通用的計算裝置來實現,它們可以集中在單個的計算裝置上,或者分布在多個計算裝置 所組成的網絡上,可選地,它們可以用計算裝置可執行的程序代碼來實現,從而,可以將它 們存儲在存儲裝置中由計算裝置來執行,并且在某些情況下,可以以不同于此處的順序執 行所示出或描述的步驟,或者將它們分別制作成各個集成電路模塊,或者將它們中的多個 模塊或步驟制作成單個集成電路模塊來實現。這樣,本發明實施例不限制于任何特定的硬 件和軟件結合。
[0146]以上所述僅為本發明的優選實施例而已,并不用于限制本發明,對于本領域的技 術人員來說,本發明實施例可以有各種更改和變化。凡在本發明的精神和原則之內,所作的 任何修改、等同替換、改進等,均應包含在本發明的保護范圍之內。
【主權項】
1. 一種涉及批量遠程調用的數據處理方法,其特征在于,包括: 對待處理數據中無需遠程調用的數據進行處理; 在非阻塞模式下,按如下方式對待處理數據中需要遠程調用的數據進行處理: 根據發送狀態和發送位置,在無需等待遠程調用完成的數據處理結果接收完畢的模式 下,連續將需要遠程調用的數據向遠程設備發送,記錄每次的發送狀態和發送位置,以及每 次的發送序號與無需遠程調用的數據的位置之間的第一對應關系; 根據接收狀態和接收位置,在無需等待需要遠程調用的數據發送完畢的模式下,連續 接收所述遠程設備的數據處理結果,記錄每次的接收狀態和接收位置,以及所述每次的發 送序號與遠程設備的數據處理結果之間的第二對應關系; 根據所述第一對應關系和第二對應關系,將遠程設備的數據處理結果與無需遠程調用 的數據處理結果進行拼接。2. 如權利要求1所述的涉及批量遠程調用的數據處理方法,其特征在于,所述待處理數 據包括:非密文數據和密文數據; 對待處理數據中無需遠程調用的數據進行處理,包括:對待處理數據中非密文數據進 行處理; 在非阻塞模式下,按如下方式對待處理數據中需要遠程調用的數據進行處理,包括:在 非阻塞模式下,按如下方式對待處理數據中密文數據進行處理; 在非阻塞模式下,按如下方式對待處理數據中密文數據進行處理,包括: 根據發送狀態和發送位置,在無需等待遠程加密設備轉換完成后的密文數據接收完畢 的模式下,連續將待轉換密文數據向遠程加密設備發送,記錄每次的發送狀態和發送位置, 以及每次的發送序號與非密文數據的位置之間的第三對應關系; 根據接收狀態和接收位置,在無需等待待轉換密文數據發送完畢的模式下,連續接收 轉換完成后的密文數據,記錄每次的接收狀態和接收位置,以及所述每次的發送序號與轉 換完成后的密文數據之間的第四對應關系; 根據所述第一對應關系和第二對應關系,將遠程設備的數據處理結果與無需遠程調用 的數據處理結果進行拼接,包括: 根據所述第三對應關系和第四對應關系,將轉換完成后的密文數據與已處理完成后的 非密文數據進行拼接。3. 如權利要求1所述的涉及批量遠程調用的數據處理方法,其特征在于,根據發送狀態 和發送位置,在無需等待遠程調用完成的數據處理結果接收完畢的模式下,連續將需要遠 程調用的數據向遠程設備發送,記錄每次的發送狀態和發送位置,包括: 將待處理數據中需要遠程調用的數據放入總的數據發送區,設置需要遠程調用數據的 發送狀態和發送位置; 將總的數據發送區中預設長度和發送位置的需要遠程調用的數據放入臨時數據區進 行發送; 查詢需要遠程調用數據的發送狀態,如果當前需要遠程調用數據發送完成,修改發送 狀態為完成,繼續發送下一條待處理數據中需要遠程調用的數據,如果未發送完成,修改發 送狀態和發送位置,根據發送狀態和發送位置,繼續發送本條待處理數據中需要遠程調用 的數據。4. 如權利要求1所述的涉及批量遠程調用的數據處理方法,其特征在于,根據接收狀態 和接收位置,在無需等待需要遠程調用的數據發送完畢的模式下,連續接收所述遠程設備 的數據處理結果,記錄每次的接收狀態和接收位置,包括: 如果接收遠程設備處理完成后數據的長度等于包頭長度,設置接收包頭已完成; 如果包頭接收已完成,開始接收并解析包體數據,設置解析包體已開始;如果包頭接收 未完成,將接收到的數據減去包頭數據,減去包頭后的數據作為包體數據; 將包體數據存入總的數據接收區中預設接收位置,修改接收狀態和接收位置,如果當 前遠程設備處理完成后的數據接收完畢,設置接收狀態為完成。5. 如權利要求1所述的涉及批量遠程調用的數據處理方法,其特征在于,存儲每次的發 送序號與無需遠程調用的數據的位置之間的第一對應關系的文件格式為: 存儲所述發送序號的序號區、無需遠程調用數據的數據區和遠程設備的數據處理結果 放置區; 存儲每次的發送序號與遠程設備的數據處理結果之間的第二對應關系的文件格式為: 存儲所述發送序號的序號區、遠程設備的數據處理結果放置區。6. -種涉及批量遠程調用的數據處理裝置,其特征在于,包括: 非遠程調用數據處理模塊,用于對待處理數據中無需遠程調用的數據進行處理; 遠程調用數據處理模塊,用于在非阻塞模式下,對待處理數據中需要遠程調用的數據 進行處理;所述遠程調用數據處理模塊包括: 遠程調用數據發送模塊,用于根據發送狀態和發送位置,在無需等待遠程調用完成的 數據處理結果接收完畢的模式下,連續將需要遠程調用的數據向遠程設備發送,記錄每次 的發送狀態和發送位置,以及每次的發送序號與無需遠程調用的數據的位置之間的第一對 應關系; 遠程調用數據處理結果接收模塊,用于根據接收狀態和接收位置,在無需等待需要遠 程調用的數據發送完畢的模式下,連續接收所述遠程設備的數據處理結果,記錄每次的接 收狀態和接收位置,以及所述每次的發送序號與遠程設備的數據處理結果之間的第二對應 關系; 數據拼接模塊,用于根據所述第一對應關系和第二對應關系,將遠程設備的數據處理 結果與無需遠程調用的數據處理結果進行拼接。7. 如權利要求6所述的涉及批量遠程調用的數據處理裝置,其特征在于,所述待處理數 據包括:非密文數據和密文數據; 非遠程調用數據處理模塊具體用于:對待處理數據中非密文數據進行處理; 遠程調用數據處理模塊具體用于:在非阻塞模式下,對待處理數據中密文數據進行處 理; 遠程調用數據發送模塊具體用于:根據發送狀態和發送位置,在無需等待遠程加密設 備轉換完成后的密文數據接收完畢的模式下,連續將待轉換密文數據向遠程加密設備發 送,記錄每次的發送狀態和發送位置,以及每次的發送序號與非密文數據的位置之間的第 三對應關系; 遠程調用數據處理結果接收模塊具體用于:根據接收狀態和接收位置,在無需等待待 轉換密文數據發送完畢的模式下,連續接收轉換完成后的密文數據,記錄每次的接收狀態 和接收位置,以及所述每次的發送序號與轉換完成后的密文數據之間的第四對應關系; 數據拼接模塊具體用于:根據所述第三對應關系和第四對應關系,將轉換完成后的密 文數據與已處理完成后的非密文數據進行拼接。8. 如權利要求6所述的涉及批量遠程調用的數據處理裝置,其特征在于,遠程調用數據 發送模塊具體用于: 將待處理數據中需要遠程調用的數據放入總的數據發送區,設置需要遠程調用數據的 發送狀態和發送位置; 將總的數據發送區中預設長度和發送位置的需要遠程調用的數據放入臨時數據區進 行發送; 查詢需要遠程調用數據的發送狀態,如果當前需要遠程調用數據發送完成,修改發送 狀態為完成,繼續發送下一條待處理數據中需要遠程調用的數據,如果未發送完成,修改發 送狀態和發送位置,根據發送狀態和發送位置,繼續發送本條待處理數據中需要遠程調用 的數據。9. 如權利要求6所述的涉及批量遠程調用的數據處理裝置,其特征在于,遠程調用數據 處理結果接收模塊具體用于: 如果接收遠程設備處理完成后數據的長度等于包頭長度,設置接收包頭已完成; 如果包頭接收已完成,開始接收并解析包體數據,設置解析包體已開始;如果包頭接收 未完成,將接收到的數據減去包頭數據,減去包頭后的數據作為包體數據; 將包體數據存入總的數據接收區中預設接收位置,修改接收狀態和接收位置,如果當 前遠程設備處理完成后的數據接收完畢,設置接收狀態為完成。10. 如權利要求6所述的涉及批量遠程調用的數據處理裝置,其特征在于,存儲每次的 發送序號與無需遠程調用的數據的位置之間的第一對應關系的文件格式為: 存儲所述發送序號的序號區、無需遠程調用數據的數據區和遠程設備的數據處理結果 放置區; 存儲每次的發送序號與遠程設備的數據處理結果之間的第二對應關系的文件格式為: 存儲所述發送序號的序號區、遠程設備的數據處理結果放置區。
【文檔編號】H04L29/08GK105915656SQ201610509077
【公開日】2016年8月31日
【申請日】2016年6月30日
【發明人】趙書祥
【申請人】中國銀行股份有限公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1