亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種處理業(yè)務數(shù)據(jù)的方法和卡服務器的制作方法

文檔序號:7718723閱讀:185來源:國知局
專利名稱:一種處理業(yè)務數(shù)據(jù)的方法和卡服務器的制作方法
技術領域
本發(fā)明涉及卡服務器技術領域,尤其是涉及一種處理業(yè)務數(shù)據(jù)的方法和卡服務器。
背景技術
隨著零售行業(yè)的發(fā)展,為了增加穩(wěn)定的客源,出現(xiàn)了會員管理模式,與該模式相應的技術產品就是會員卡、POS(Point of Sales,銷售點)機和卡服務器。
現(xiàn)有的卡服務器架構如圖l所示,包括同步輸入/輸出框架10'、業(yè)務處理框架20',業(yè)務處理框架20'中包含業(yè)務處理器201'和數(shù)據(jù)庫鏈接池202'。多個POS機客戶端30'通過HTTP(超文本傳輸協(xié)議)或UDP(用戶數(shù)據(jù)報協(xié)議)向卡服務器l'發(fā)送業(yè)務數(shù)據(jù)/接收業(yè)務數(shù)據(jù)處理結果;同步輸入/輸出框架10'監(jiān)聽各個端口是否有業(yè)務數(shù)據(jù)到達,當有業(yè)務數(shù)據(jù)到達時,同步輸入/輸出框架10'會在卡服務器1'的操作系統(tǒng)的緩存區(qū)接收數(shù)據(jù),當數(shù)據(jù)接收完后,將業(yè)務數(shù)據(jù)和發(fā)送業(yè)務數(shù)據(jù)的客戶端30'的標識傳遞給業(yè)務處理器201',然后才能再進行監(jiān)聽,此時,如果在同步輸入/輸出框架10'接收業(yè)務數(shù)據(jù)(或叫讀取客戶客戶端發(fā)送的數(shù)據(jù))時,又有大量的業(yè)務數(shù)據(jù)過來,那么這些業(yè)務數(shù)據(jù)只能緩存在操作系統(tǒng)的緩存區(qū)內,等待同步輸入/輸出框架10'下次來接收(或讀取)這些數(shù)據(jù)。同步輸入/輸出框架10'在同一時刻只能允許一個輸入/輸出操作,也就是說對于同一個端口的輸入/輸出操作是序列化的。之后,業(yè)務處理器201'利用數(shù)據(jù)庫鏈接池202'與數(shù)據(jù)庫40'建立連接,通過業(yè)務數(shù)據(jù)中的用戶標識在數(shù)據(jù)庫40'中查找對應的記錄,將業(yè)務數(shù)據(jù)的處理結果記錄在數(shù)據(jù)庫40'中,并將業(yè)務數(shù)據(jù)的處理結果返回所述POS機客戶端30'。
例如,在超市結賬的時候,若客戶持有會員卡會在POS機上刷卡,與該會員卡相關的業(yè)務數(shù)據(jù)都會傳到卡服務器r進行處理。在過節(jié)和周末時,由于結賬的人數(shù)非常多,并
且很多pos機客戶端30'同時啟動的情況下,刷卡的業(yè)務數(shù)據(jù)會不斷的傳給卡服務器r ,但卡服務器r中同步輸入/輸出框架io'的接收能力和業(yè)務處理器2or的處理能力有限,雖然卡服務器r操作系統(tǒng)的緩存區(qū)可以對未接收的業(yè)務數(shù)據(jù)進行緩存,但是,當并發(fā)的業(yè)務數(shù)據(jù)量繼續(xù)增加,直到緩存空間溢出,那么再到達的業(yè)務數(shù)據(jù)會被卡服務器丟棄,導致在pos機客戶端等待業(yè)務數(shù)據(jù)處理結果的延時現(xiàn)象嚴重。

發(fā)明內容
本發(fā)明的目的是提供一種處理業(yè)務數(shù)據(jù)的方法和卡服務器,以減少現(xiàn)有技術處理
超強并發(fā)業(yè)務數(shù)據(jù)時的數(shù)據(jù)丟失和延時現(xiàn)象。
本發(fā)明提供了一種處理業(yè)務數(shù)據(jù)的方法,包括 當監(jiān)聽到卡服務器的某個端口有數(shù)據(jù)到達時,通知卡服務器接收所述數(shù)據(jù);在數(shù)據(jù)接收完成后,驗證所述數(shù)據(jù)是否為業(yè)務數(shù)據(jù); 若所述驗證結果為是,則將所述數(shù)據(jù)發(fā)送給業(yè)務處理框架進行處理,并將業(yè)務處理框架的處理結果返回發(fā)送所述數(shù)據(jù)的客戶端;若所述驗證結果為否,則丟棄該數(shù)據(jù)。
本發(fā)明還提供了一種卡服務器,所述卡服務器包括異步輸入/輸出框架和業(yè)務處 理框架; 所述異步輸入/輸出框架用于當監(jiān)聽到卡服務器的某個端口有數(shù)據(jù)到達時,通 知卡服務器接收所述數(shù)據(jù);在數(shù)據(jù)接收完成后,驗證所述數(shù)據(jù)是否為業(yè)務數(shù)據(jù);若所述驗 證結果為是,則將所述數(shù)據(jù)發(fā)送給業(yè)務處理框架進行處理,并將業(yè)務處理框架的處理結果 返回發(fā)送所述數(shù)據(jù)的客戶端;若所述驗證結果為否,則丟棄該數(shù)據(jù)。 本發(fā)明的處理業(yè)務數(shù)據(jù)的方法和卡服務器,通過對監(jiān)聽端口和接收數(shù)據(jù)進行異步 處理,避免了超強并發(fā)業(yè)務數(shù)據(jù)時數(shù)據(jù)丟失的問題;通過驗證接收的數(shù)據(jù)是否為業(yè)務數(shù)據(jù), 將非業(yè)務數(shù)據(jù)丟棄,降低了處理器需要處理的業(yè)務數(shù)據(jù)量,降低了處理超強并發(fā)業(yè)務數(shù)據(jù) 時的延時現(xiàn)象的出現(xiàn)概率。


圖1是現(xiàn)有技術卡服務器的框架示意圖; 圖2是本發(fā)明處理業(yè)務數(shù)據(jù)的方法的第一實施例的流程示意圖;
圖3是本發(fā)明處理業(yè)務數(shù)據(jù)的方法的第二實施例的流程示意圖;
圖4是本發(fā)明處理業(yè)務數(shù)據(jù)的方法的一個優(yōu)選實施例的流程示意圖;
圖5是本發(fā)明卡服務器的框架示意圖。
具體實施例方式
為使本發(fā)明的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結合附圖和具體實 施方式對本發(fā)明實施例作進一步詳細的說明。
實施例一 本實施例提供了一種處理業(yè)務數(shù)據(jù)的方法,如圖2所示,包括 S101,當監(jiān)聽到卡服務器的某個端口有數(shù)據(jù)到達時,通知卡服務器接收所述數(shù)據(jù); 在數(shù)據(jù)接收完成后,驗證所述數(shù)據(jù)是否為業(yè)務數(shù)據(jù); 現(xiàn)有技術在卡服務器的端口有數(shù)據(jù)到達時,先在卡服務器的操作系統(tǒng)緩存區(qū)接收 數(shù)據(jù),數(shù)據(jù)接收完畢后,直接將數(shù)據(jù)發(fā)送給處理器處理;處理器要判斷該數(shù)據(jù)是否為業(yè)務數(shù) 據(jù),并進一步判斷所述業(yè)務數(shù)據(jù)是否與配置文件中預置的可處理業(yè)務類型匹配,若所述數(shù) 據(jù)不是業(yè)務數(shù)據(jù)或不是可處理的業(yè)務類型,則將所述數(shù)據(jù)丟棄。 而本發(fā)明是在卡服務器的端口有數(shù)據(jù)到達時,及時將數(shù)據(jù)全部接收下來,由此避
免超強并發(fā)業(yè)務數(shù)據(jù)時卡服務器丟棄數(shù)據(jù)的問題。由于卡服務器設置在網(wǎng)絡側,因此有時
會接收到一些垃圾數(shù)據(jù)(即非客戶端發(fā)送的業(yè)務數(shù)據(jù)),通過對接收的數(shù)據(jù)進行驗證,能夠
屏蔽掉垃圾數(shù)據(jù),降低處理器的負擔,減少處理超強并發(fā)業(yè)務數(shù)據(jù)時的延時現(xiàn)象。 S102,若所述驗證結果為是,則將所述數(shù)據(jù)發(fā)送給業(yè)務處理框架進行處理,并將業(yè)
務處理框架的處理結果返回發(fā)送所述數(shù)據(jù)的客戶端;若所述驗證結果為否,則丟棄該數(shù)據(jù)。 異步輸入/輸出框架可以保存發(fā)送所述數(shù)據(jù)的客戶端的標識,在返回數(shù)據(jù)處理結
果時根據(jù)該標識返回相應的客戶端;也可以將所述客戶端標識與數(shù)據(jù)一同發(fā)送給業(yè)務處理
框架,在數(shù)據(jù)處理過程中始終伴隨該客戶端標識,本發(fā)明對此不做限定。 本實施例通過對監(jiān)聽端口和接收數(shù)據(jù)進行異步處理,避免了超強并發(fā)業(yè)務數(shù)據(jù)時
5數(shù)據(jù)丟失的問題;通過驗證接收的數(shù)據(jù)是否為業(yè)務數(shù)據(jù),將非業(yè)務數(shù)據(jù)丟棄,降低了處理器 需要處理的業(yè)務數(shù)據(jù)量,降低了處理超強并發(fā)業(yè)務數(shù)據(jù)時的延時現(xiàn)象的出現(xiàn)概率。
實施例二 本實施例提供了一種處理業(yè)務數(shù)據(jù)的方法,如圖3所示,包括 S201,當異步輸入/輸出框架監(jiān)聽到卡服務器的某個端口有數(shù)據(jù)到達時,通知卡
服務器接收所述數(shù)據(jù);在數(shù)據(jù)接收完成后,異步輸入/輸出框架驗證所述數(shù)據(jù)是否為業(yè)務數(shù)據(jù)。 異步監(jiān)聽端口、接收數(shù)據(jù)時,卡服務器的操作系統(tǒng)會將輸入/輸出線程注冊到數(shù) 據(jù)接收的端口上(類似于同步輸入/輸出框架的端口監(jiān)聽),當有數(shù)據(jù)發(fā)向該端口時,異步 輸入/輸出框架并不進行數(shù)據(jù)的接收操作,而是通過之前注冊的輸入/輸出線程發(fā)送一個 輸入/輸出請求,請求卡服務器接收數(shù)據(jù),當卡服務器接收完數(shù)據(jù)后,再通知輸入/輸出線 程數(shù)據(jù)接收完成。異步輸入/輸出框架允許一個或多個線程同時發(fā)出輸入/輸出請求。這 樣當數(shù)據(jù)大量發(fā)送過來時,讀取(或接收)數(shù)據(jù)的效率會大大提高。 異步輸入/輸出框架不會出現(xiàn)因操作系統(tǒng)層緩存區(qū)溢出造成后來的數(shù)據(jù)丟失、客 戶端刷卡無反應的現(xiàn)象,盡可能保證到達端口的數(shù)據(jù)都會被適當處理。異步輸入/輸出框 架的緩存區(qū)可以設置在內存,因此,相較于操作系統(tǒng)層有很大的擴展彈性,能夠保證足夠的 容量來緩存接收到的全部數(shù)據(jù)。 異步輸入/輸出框架還會驗證該數(shù)據(jù)是否為業(yè)務數(shù)據(jù),由于可以將垃圾數(shù)據(jù)屏蔽 掉,以降低處理器的負擔。 S202,若所述驗證結果為是,則異步輸入/輸出框架將所述數(shù)據(jù)發(fā)送給業(yè)務處理 框架進行處理,并將業(yè)務處理框架的處理結果返回發(fā)送所述數(shù)據(jù)的客戶端;若所述驗證結 果為否,異步輸入/輸出框架丟棄該數(shù)據(jù)。 本實施例中,在將數(shù)據(jù)發(fā)送給業(yè)務處理框架前,異步輸入/輸出框架會先對數(shù)據(jù) 進行初步的格式篩選,只有當數(shù)據(jù)滿足基本的業(yè)務數(shù)據(jù)格式時,該數(shù)據(jù)才會被傳送給業(yè)務 處理框架。 所述業(yè)務處理框架優(yōu)選包括數(shù)據(jù)庫鏈接池和至少一個處理器(處理器A、處理器
B......),所述業(yè)務處理框架的配置文件中預置有業(yè)務類型和處理器的對應關系;則所述
業(yè)務處理框架進行數(shù)據(jù)處理具體可以為所述業(yè)務處理框架匹配出所述數(shù)據(jù)的業(yè)務類型, 根據(jù)所述對應關系將所述數(shù)據(jù)發(fā)送給與所述業(yè)務類型匹配的處理器,所述處理器通過所述 數(shù)據(jù)庫鏈接池與數(shù)據(jù)庫交互,對所述數(shù)據(jù)進行處理。 優(yōu)選的,在業(yè)務處理框架將數(shù)據(jù)發(fā)送給處理器之前,還包括檢測配置文件中是否 包括所述數(shù)據(jù)的業(yè)務類型;若是,則業(yè)務處理框架將所述數(shù)據(jù)發(fā)送給與所述業(yè)務類型匹配 的處理器;若否,則業(yè)務處理框架丟棄該數(shù)據(jù)。這是由于,在實際實施時還可能存在一種情 況業(yè)務處理框架中的處理器不能處理某種業(yè)務類型的數(shù)據(jù)。雖然該數(shù)據(jù)也符合業(yè)務數(shù)據(jù) 的格式并被異步輸入/輸出框架發(fā)送到業(yè)務處理框架,但業(yè)務處理框架通過檢測數(shù)據(jù)的業(yè) 務類型與配置文件中的業(yè)務類型是否匹配,將不能處理的業(yè)務數(shù)據(jù)丟掉,能夠進一步降低 處理器處理的數(shù)據(jù)量。 所述數(shù)據(jù)包含有卡標識,處理器可以到數(shù)據(jù)庫中查找與所述卡標識對應的記錄, 并根據(jù)數(shù)據(jù)中的業(yè)務類型對所述數(shù)據(jù)進行處理,并對所述卡標識對應的記錄進行更新。
通過為每種業(yè)務類型配置一個處理器,將數(shù)據(jù)處理負擔分配到多臺處理器上,進一步降低處理超強并發(fā)數(shù)據(jù)時由于處理器滿負荷造成延時的可能性。 在所述客戶端發(fā)送數(shù)據(jù)前,還包括步驟S203 :異步輸入/輸出框架接收所述業(yè)務處理框架的第一注冊請求。 在所述業(yè)務處理框架向異步輸入/輸出框架注冊前,還包括步驟S204 :各處理器
向所述業(yè)務處理框架發(fā)送第二注冊請求,業(yè)務處理框架根據(jù)各處理器第二注冊請求中攜帶
的業(yè)務類型和處理器標識,設置所述配置文件中業(yè)務類型和處理器的對應關系。
各處理器向業(yè)務處理框架注冊后,業(yè)務處理框架可以獲悉可用的處理器都能處
理哪些業(yè)務類型,并將這些業(yè)務類型保存在自身的配置文件中,設置為預置的業(yè)務類型和
處理器的對應關系,由此可以為異步輸入/輸出框架發(fā)送來的數(shù)據(jù)選擇適當?shù)奶幚砥鳎?br> 及對接收的數(shù)據(jù)進行準確的篩選。 業(yè)務處理框架是一種虛擬的邏輯框架,業(yè)務處理框架對各處理器之間的協(xié)調不存在耦合,為以后業(yè)務類型擴展和系統(tǒng)擴展打好了基礎,也為分布式部署做好了準備。
在所述業(yè)務處理框架的注冊完成且所述客戶端發(fā)送數(shù)據(jù)前,還包括步驟S205 :客戶端與異步輸入/輸出框架建立連接。 優(yōu)選的,所述連接為基于TCP/IP(傳輸控制協(xié)議/網(wǎng)間協(xié)議)的連接。由于現(xiàn)有技
術中客戶端與同步輸入/輸出框架之間傳輸數(shù)據(jù)或者采用UDP,或者采用HTTP ;其中,采用
UDP雖然速度快,但對數(shù)據(jù)的傳輸成功與正確性沒有保障,由于會員卡涉及到會員積分甚至
金額,所以對可靠性的要求非常高,若還采用UDP則很難滿足該要求;若采用HTTP,雖然能
夠保證數(shù)據(jù)傳輸?shù)某晒驼_性,但由于HTTP是一種短連接的協(xié)議,每次訪問都需要重新
建立連接,且卡服務器傳輸?shù)臄?shù)據(jù)較小,因此每次數(shù)據(jù)發(fā)送的時間都浪費在連接的建立上,
降低了卡服務器的響應速度,加劇了處理超強并發(fā)業(yè)務數(shù)據(jù)時的延時問題。 本發(fā)明采用TCP/IP作為客戶端和異步輸入/輸出框架之間連接的協(xié)議,一方面由
于TCP/IP是面向連接的協(xié)議,能夠保證數(shù)據(jù)傳輸?shù)某晒驼_性,另一方面TCP/IP可以在
連接建立成功后一直維持該連接,而無需為每個數(shù)據(jù)建立一次連接,不會影響卡服務器的
處理速度。 下面通過一個優(yōu)選實施例描述業(yè)務數(shù)據(jù)的處理流程(參見圖4):
S301,各處理器向所述業(yè)務處理框架注冊; S302,業(yè)務處理框架設置配置文件中業(yè)務類型和處理器的對應關系;
S303,業(yè)務處理框架向異步輸入/輸出框架注冊;
S304,客戶端與異步輸入/輸出框架建立連接;
S305 ,客戶端發(fā)送數(shù)據(jù); S306,異步輸入/輸出框架對接收的數(shù)據(jù)進行驗證; S307,異步輸入/輸出框架將驗證后的數(shù)據(jù)發(fā)送給業(yè)務處理框架; S308,業(yè)務處理框架將所述數(shù)據(jù)發(fā)送給與所述數(shù)據(jù)的業(yè)務類型匹配的處理器(如
處理器A); S309,處理器向業(yè)務處理框架返回處理結果; S310,業(yè)務處理框架向異步輸入/輸出框架返回處理結果; S311,異步輸入/輸出框架將處理結果返回所述客戶端。
本實施例的方法,采用異步輸入/輸出框架對監(jiān)聽端口和接收數(shù)據(jù)進行異步處理,及時將到達端口的數(shù)據(jù)全部接收下來,保證了到達端口的數(shù)據(jù)都會被適當處理,避免了超強并發(fā)業(yè)務數(shù)據(jù)時數(shù)據(jù)丟失的問題;通過異步輸入/輸出框架驗證數(shù)據(jù)是否為業(yè)務數(shù)據(jù),將非業(yè)務數(shù)據(jù)丟棄,降低了處理器需要處理的業(yè)務數(shù)據(jù)量,降低了處理超強并發(fā)業(yè)務數(shù)據(jù)時的延時現(xiàn)象的出現(xiàn)概率;通過業(yè)務處理框架檢測數(shù)據(jù)的業(yè)務類型是否為處理器可處理的業(yè)務類型,若否則丟棄該數(shù)據(jù),可以進一步降低處理器需要處理的業(yè)務數(shù)據(jù)量;通過多處理器架構,降低了單個處理器出現(xiàn)滿負荷的可能性,而且對于業(yè)務類型具有良好的擴展性;通過采用TCP/IP作為客戶端和異步輸入/輸出框架之間連接的協(xié)議,保證了數(shù)據(jù)傳輸?shù)某?br> 功和正確性,并且不影響卡服務器的處理速度。
實施例三 本實施例提供了一種卡服務器,如圖5所示,所述卡服務器1包括異步輸入/輸出框架10和業(yè)務處理框架20 ; 所述異步輸入/輸出框架10用于當監(jiān)聽到卡服務器1的某個端口有數(shù)據(jù)到達時,通知卡服務器1接收所述數(shù)據(jù);在數(shù)據(jù)接收完成后,驗證所述數(shù)據(jù)是否為業(yè)務數(shù)據(jù);若所述驗證結果為是,則將所述數(shù)據(jù)發(fā)送給業(yè)務處理框架20進行處理,并將業(yè)務處理框架20的處理結果返回發(fā)送所述數(shù)據(jù)的客戶端;若所述驗證結果為否,則丟棄該數(shù)據(jù)。
所述業(yè)務處理框架20包括數(shù)據(jù)庫鏈接池200和至少一個處理器201,所述業(yè)務處理框架20的配置文件中預置有業(yè)務類型和處理器201的對應關系。 所述業(yè)務處理框架20具體用于匹配出所述數(shù)據(jù)的業(yè)務類型,根據(jù)所述對應關系將所述數(shù)據(jù)發(fā)送給與所述業(yè)務類型對應的處理器201,以使所述處理器201通過所述數(shù)據(jù)庫鏈接池200與數(shù)據(jù)庫3交互對所述數(shù)據(jù)進行處理。 所述業(yè)務處理框架20還用于在將數(shù)據(jù)發(fā)送給處理器201之前,檢測配置文件中是否包括所述數(shù)據(jù)的業(yè)務類型;若否,則丟棄該數(shù)據(jù)。
所述異步輸入/輸出框架10還可以包括 第一接收模塊100,用于接收所述業(yè)務處理框架20的第一注冊請求。
所述業(yè)務處理框架20還可以包括 第二接收模塊202,用于接收各處理器201發(fā)送的第二注冊請求; 設置模塊203,用于根據(jù)各處理器第二注冊請求中攜帶的業(yè)務類型和處理器標識,
設置所述配置文件中業(yè)務類型和處理器的對應關系。 所述異步輸入/輸出框架10還可以用于在所述業(yè)務處理框架20的注冊完成且所述客戶端2發(fā)送數(shù)據(jù)前,與客戶端2建立連接。所述連接優(yōu)選為基于TCP/IP的連接。
本實施例的卡服務器,采用異步輸入/輸出框架對監(jiān)聽端口和接收數(shù)據(jù)進行異步處理,及時將到達端口的數(shù)據(jù)全部接收下來,保證了到達端口的數(shù)據(jù)都會被適當處理,避免了超強并發(fā)業(yè)務數(shù)據(jù)時數(shù)據(jù)丟失的問題;通過異步輸入/輸出框架驗證數(shù)據(jù)是否為業(yè)務數(shù)據(jù),將非業(yè)務數(shù)據(jù)丟棄,降低了處理器需要處理的業(yè)務數(shù)據(jù)量,降低了處理超強并發(fā)業(yè)務數(shù)據(jù)時的延時現(xiàn)象的出現(xiàn)概率;通過業(yè)務處理框架檢測數(shù)據(jù)的業(yè)務類型是否為處理器可處理的業(yè)務類型,若否則丟棄該數(shù)據(jù),可以進一步降低處理器需要處理的業(yè)務數(shù)據(jù)量;通過多處理器架構,降低了單個處理器出現(xiàn)滿負荷的可能性,而且對于業(yè)務類型具有良好的擴展性;通過采用TCP/IP作為客戶端和異步輸入/輸出框架之間連接的協(xié)議,保證了數(shù)據(jù)傳輸?shù)某?br> 8功和正確性,并且不影響卡服務器的處理速度。 由于卡服務器實施例部分與方法實施例部分的相似內容較多,因此描述的比較簡略,相關之處請參見方法實施例。 需要說明的是,在本文中,諸如第一和第二等之類的關系術語僅僅用來將一個實體或者操作與另一個實體或操作區(qū)分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關系或者順序。而且,術語"包括"、"包含"或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設備
所固有的要素。在沒有更多限制的情況下,由語句"包括一個......"限定的要素,并不排
除在包括所述要素的過程、方法、物品或者設備中還存在另外的相同要素。
以上所述僅為本發(fā)明的較佳實施例而已,并非用于限定本發(fā)明的保護范圍。凡在
本發(fā)明的精神和原則之內所作的任何修改、等同替換、改進等,均包含在本發(fā)明的保護范圍內。
9
權利要求
一種處理業(yè)務數(shù)據(jù)的方法,其特征在于,包括當監(jiān)聽到卡服務器的某個端口有數(shù)據(jù)到達時,通知卡服務器接收所述數(shù)據(jù);在數(shù)據(jù)接收完成后,驗證所述數(shù)據(jù)是否為業(yè)務數(shù)據(jù);若所述驗證結果為是,則將所述數(shù)據(jù)發(fā)送給業(yè)務處理框架進行處理,并將業(yè)務處理框架的處理結果返回發(fā)送所述數(shù)據(jù)的客戶端;若所述驗證結果為否,則丟棄該數(shù)據(jù)。
2. 如權利要求1所述的方法,其特征在于,所述業(yè)務處理框架包括數(shù)據(jù)庫鏈接池和至 少一個處理器,所述業(yè)務處理框架的配置文件中預置有業(yè)務類型和處理器的對應關系;則所述業(yè)務處理框架進行數(shù)據(jù)處理具體為所述業(yè)務處理框架匹配出所述數(shù)據(jù)的業(yè)務 類型,根據(jù)所述對應關系將所述數(shù)據(jù)發(fā)送給與所述業(yè)務類型對應的處理器,所述處理器通 過所述數(shù)據(jù)庫鏈接池與數(shù)據(jù)庫交互,對所述數(shù)據(jù)進行處理。
3. 如權利要求2所述的方法,其特征在于,在業(yè)務處理框架將數(shù)據(jù)發(fā)送給處理器之前, 還包括業(yè)務處理框架檢測配置文件中是否包括所述數(shù)據(jù)的業(yè)務類型;若否,則丟棄該數(shù) 據(jù)。
4. 如權利要求l-3任一項所述的方法,其特征在于,在所述客戶端發(fā)送數(shù)據(jù)前,還包 括異步輸入/輸出框架接收所述業(yè)務處理框架的第一注冊請求。
5. 如權利要求4所述的方法,其特征在于,在所述業(yè)務處理框架向異步輸入/輸出框架 注冊前,還包括各處理器向所述業(yè)務處理框架發(fā)送第二注冊請求,業(yè)務處理框架根據(jù)各處 理器第二注冊請求中攜帶的業(yè)務類型和處理器標識,設置所述配置文件中業(yè)務類型和處理 器的對應關系。
6. 如權利要求4所述的方法,其特征在于,在所述業(yè)務處理框架的注冊完成且所述客 戶端發(fā)送數(shù)據(jù)前,還包括客戶端與異步輸入/輸出框架建立連接。
7. 如權利要求6所述的方法,其特征在于,所述連接為基于TCP/IP的連接。
8. —種卡服務器,其特征在于,所述卡服務器包括異步輸入/輸出框架和業(yè)務處理框架;所述異步輸入/輸出框架用于當監(jiān)聽到卡服務器的某個端口有數(shù)據(jù)到達時,通知卡 服務器接收所述數(shù)據(jù);在數(shù)據(jù)接收完成后,驗證所述數(shù)據(jù)是否為業(yè)務數(shù)據(jù);若所述驗證結 果為是,則將所述數(shù)據(jù)發(fā)送給業(yè)務處理框架進行處理,并將業(yè)務處理框架的處理結果返回 發(fā)送所述數(shù)據(jù)的客戶端;若所述驗證結果為否,則丟棄該數(shù)據(jù)。
9. 如權利要求8所述的卡服務器,其特征在于,所述業(yè)務處理框架包括數(shù)據(jù)庫鏈接池 和至少一個處理器,所述業(yè)務處理框架的配置文件中預置有業(yè)務類型和處理器的對應關 系;所述業(yè)務處理框架具體用于匹配出所述數(shù)據(jù)的業(yè)務類型,根據(jù)所述對應關系將所述 數(shù)據(jù)發(fā)送給與所述業(yè)務類型對應的處理器,以使所述處理器通過所述數(shù)據(jù)庫鏈接池與數(shù)據(jù) 庫交互對所述數(shù)據(jù)進行處理。
10. 如權利要求9所述的卡服務器,其特征在于,所述業(yè)務處理框架還用于在將數(shù)據(jù) 發(fā)送給處理器之前,檢測配置文件中是否包括所述數(shù)據(jù)的業(yè)務類型;若否,則丟棄該數(shù)據(jù)。
11. 如權利要求8-10任一項所述的卡服務器,其特征在于,所述異步輸入/輸出框架還 包括第一接收模塊,用于接收所述業(yè)務處理框架的第一注冊請求。
12. 如權利要求11所述的卡服務器,其特征在于,所述業(yè)務處理框架還包括 第二接收模塊,用于接收各處理器發(fā)送的第二注冊請求;設置模塊,用于根據(jù)各處理器第二注冊請求中攜帶的業(yè)務類型和處理器標識,設置所 述配置文件中業(yè)務類型和處理器的對應關系。
13. 如權利要求ll所述的卡服務器,其特征在于,所述異步輸入/輸出框架還用于在所述業(yè)務處理框架的注冊完成且所述客戶端發(fā)送數(shù)據(jù)前,與客戶端建立連接。
全文摘要
本發(fā)明公開了一種處理業(yè)務數(shù)據(jù)的方法和卡服務器,其中,所述方法包括當監(jiān)聽到卡服務器的某個端口有數(shù)據(jù)到達時,通知卡服務器接收所述數(shù)據(jù);在數(shù)據(jù)接收完成后,驗證所述數(shù)據(jù)是否為業(yè)務數(shù)據(jù);若所述驗證結果為是,則將所述數(shù)據(jù)發(fā)送給業(yè)務處理框架進行處理,并將業(yè)務處理框架的處理結果返回發(fā)送所述數(shù)據(jù)的客戶端;若所述驗證結果為否,則丟棄該數(shù)據(jù)。通過對監(jiān)聽端口和接收數(shù)據(jù)進行異步處理,避免了超強并發(fā)業(yè)務數(shù)據(jù)時數(shù)據(jù)丟失的問題;通過驗證接收的數(shù)據(jù)是否為業(yè)務數(shù)據(jù),將非業(yè)務數(shù)據(jù)丟棄,降低了處理器需要處理的業(yè)務數(shù)據(jù)量,降低了處理超強并發(fā)業(yè)務數(shù)據(jù)時的延時現(xiàn)象的出現(xiàn)概率。
文檔編號H04L29/06GK101714988SQ20091022335
公開日2010年5月26日 申請日期2009年11月19日 優(yōu)先權日2009年11月19日
發(fā)明者劉彬 申請人:金蝶軟件(中國)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1