国产精品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>

      基于松散架構(gòu)的Web服務(wù)方法及系統(tǒng)的制作方法

      文檔序號:9436084閱讀:536來源:國知局
      基于松散架構(gòu)的Web服務(wù)方法及系統(tǒng)的制作方法
      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明涉及互聯(lián)網(wǎng)應(yīng)用技術(shù)領(lǐng)域,特別涉及一種基于松散架構(gòu)的Web服務(wù)方法及系統(tǒng)。
      【背景技術(shù)】
      [0002]互聯(lián)網(wǎng)、尤其是移動互聯(lián)網(wǎng)的發(fā)展同時帶動了計算機軟件應(yīng)用的飛速發(fā)展,借助于互聯(lián)網(wǎng),用戶可以在任意時間地點使用處理終端進(jìn)行交流或事務(wù)處理,但由于用戶可選擇的訪問方式過多,也使得現(xiàn)有的軟件架構(gòu)難以提供統(tǒng)一的互聯(lián)網(wǎng)服務(wù)。典型地,用戶設(shè)備就至少存在通用計算設(shè)備和以智能終端為主的嵌入式計算設(shè)備等不同體系,對應(yīng)操作系統(tǒng)也有Windows、Unix、Android、OS等不同系列,而用戶訪問服務(wù)器的軟件工具也各不相同,這些差異需要分別采用不同的技術(shù)予以支持,這給互聯(lián)網(wǎng)軟件的實現(xiàn)帶來了極大壓力。
      [0003]現(xiàn)有技術(shù)中為了對不同體系、不同操作系統(tǒng)的用戶統(tǒng)一提供Web服務(wù),通常采用B/S (Browser/Server,瀏覽器/服務(wù)器)架構(gòu)提供支持,S卩服務(wù)器端構(gòu)建基于HTTP (HyperText Transfer Protocol,超文本傳輸協(xié)議)的Web服務(wù)器,用戶通過終端的瀏覽器工具進(jìn)行訪問;該方式可以用最小的代價提供通用的訪問支持,并盡量減輕用戶終端的壓力,實現(xiàn)瘦客戶端。但隨著移動互聯(lián)網(wǎng)的發(fā)展,由于B/S模式的表現(xiàn)形式有限、每次訪問傳輸?shù)臄?shù)據(jù)量大且難以針對用戶進(jìn)行個性化設(shè)置,在移動終端中已經(jīng)被移動App所取代。因此,如果要同時支持多種方式的服務(wù)提供和響應(yīng),現(xiàn)有技術(shù)中一個較為完備的網(wǎng)絡(luò)服務(wù)就至少需要提供HTTP服務(wù)器、桌面客戶端及對應(yīng)服務(wù)器、移動App及對應(yīng)服務(wù)器等,再考慮到不同操作系統(tǒng)的客戶端或App實現(xiàn)技術(shù)不同,這給系統(tǒng)架構(gòu)和服務(wù)器端的實現(xiàn)帶來了極大壓力。

      【發(fā)明內(nèi)容】

      [0004]針對現(xiàn)有技術(shù)的缺陷,本發(fā)明的目的是提供一種基于松散架構(gòu)的Web服務(wù)方法及系統(tǒng),以高效快捷地提供通用Web服務(wù)。
      [0005]根據(jù)本發(fā)明的一個方面,提供了一種基于松散架構(gòu)的Web服務(wù)方法,包括步驟:
      [0006]通過數(shù)據(jù)接口接收用戶數(shù)據(jù),根據(jù)所述用戶數(shù)據(jù)創(chuàng)建所需的對象;
      [0007]根據(jù)各個所述對象創(chuàng)建并執(zhí)行業(yè)務(wù)邏輯,產(chǎn)生數(shù)據(jù)操作請求并相應(yīng)存入緩存和/或隊列;
      [0008]通過數(shù)據(jù)操作接口接收所述緩存和/或隊列中的所述數(shù)據(jù)操作請求,進(jìn)一步封裝后完成對數(shù)據(jù)源的訪問;
      [0009]將所述訪問的結(jié)果數(shù)據(jù)返回給用戶。
      [0010]優(yōu)選地,所述方法中,所述通過數(shù)據(jù)接口接收用戶數(shù)據(jù)包括:
      [0011]通過WebAPI和/或HTTP接口接收包括來自桌面客戶端、移動App和瀏覽器訪問的所述用戶數(shù)據(jù)。
      [0012]優(yōu)選地,所述方法中,所述創(chuàng)建所需的對象包括:
      [0013]通過依賴注入的方式來創(chuàng)建所需的所述對象。
      [0014]優(yōu)選地,所述方法還包括步驟:
      [0015]搭建分布式緩存服務(wù)器實現(xiàn)所述緩存和/或隊列。
      [0016]優(yōu)選地,所述方法中,所述將所述訪問的結(jié)果數(shù)據(jù)返回給用戶包括:
      [0017]按照邏輯層次架構(gòu)自下而上對所述結(jié)果數(shù)據(jù)進(jìn)行封裝后逐層返回,最后由所述數(shù)據(jù)接口將所述結(jié)果數(shù)據(jù)提供到各個用戶界面中。
      [0018]根據(jù)本發(fā)明的另一個方面,還同時提供了一種基于松散架構(gòu)的Web服務(wù)系統(tǒng),包括:
      [0019]用戶數(shù)據(jù)模塊,用于通過數(shù)據(jù)接口接收用戶數(shù)據(jù),根據(jù)所述用戶數(shù)據(jù)創(chuàng)建所需的對象;
      [0020]業(yè)務(wù)模塊,用于根據(jù)各個所述對象創(chuàng)建并執(zhí)行業(yè)務(wù)邏輯,產(chǎn)生數(shù)據(jù)操作請求并相應(yīng)存入緩存和/或隊列;
      [0021]數(shù)據(jù)訪問模塊,用于通過數(shù)據(jù)操作接口接收所述緩存和/或隊列中的所述數(shù)據(jù)操作請求,進(jìn)一步封裝后完成對數(shù)據(jù)源的訪問;
      [0022]結(jié)果返回模塊,用于將所述訪問的結(jié)果數(shù)據(jù)返回給用戶。
      [0023]優(yōu)選地,所述用戶數(shù)據(jù)模塊包括:
      [0024]統(tǒng)一接口模塊,用于通過WebAPI和/或HTTP接口接收包括來自桌面客戶端、移動App和瀏覽器訪問的所述用戶數(shù)據(jù)。
      [0025]優(yōu)選地,所述用戶數(shù)據(jù)模塊包括:
      [0026]依賴注入模塊,用于通過依賴注入的方式來創(chuàng)建所需的所述對象。
      [0027]優(yōu)選地,所述系統(tǒng)還包括:
      [0028]分布式緩存服務(wù)器,用于分布式地實現(xiàn)所述緩存和/或隊列。
      [0029]優(yōu)選地,所述結(jié)果返回模塊包括:
      [0030]分層處理模塊,用于按照邏輯層次架構(gòu)自下而上對所述結(jié)果數(shù)據(jù)進(jìn)行封裝后逐層返回,最后由所述數(shù)據(jù)接口將所述結(jié)果數(shù)據(jù)提供到各個用戶界面中。
      [0031]本發(fā)明實施例提供了一種基于松散架構(gòu)的Web服務(wù)方法及系統(tǒng),通過在各層之間加入了接口層來解耦各層之間的耦合,以松耦合方式實現(xiàn)了對不同訪問模式的統(tǒng)一支持,有效增加了系統(tǒng)的靈活性,降低了系統(tǒng)實現(xiàn)難度,同時可顯著減少工作量,提高系統(tǒng)整體效率并減少錯誤,提升了用戶體驗。
      【附圖說明】
      [0032]圖1是本發(fā)明實施例中基于松散架構(gòu)的Web服務(wù)方法的流程示意圖;
      [0033]圖2是本發(fā)明實施例中基于松散架構(gòu)的Web服務(wù)系統(tǒng)的模塊示意圖;
      [0034]圖3是本發(fā)明的一個優(yōu)選實施例中系統(tǒng)的典型應(yīng)用示意圖。
      【具體實施方式】
      [0035]為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚明了,下面結(jié)合【具體實施方式】并參照附圖,對本發(fā)明進(jìn)一步詳細(xì)說明。應(yīng)該理解,這些描述只是示例性的,而并非要限制本發(fā)明的范圍。此外,在以下說明中,省略了對公知結(jié)構(gòu)和技術(shù)的描述,以避免不必要地混淆本發(fā)明的概念。
      [0036]現(xiàn)有技術(shù)中,典型的Web服務(wù)軟件架構(gòu)一般在邏輯上體現(xiàn)為包括表現(xiàn)層(UserInterface Layer,又稱用戶界面層、表示層等)、業(yè)務(wù)邏輯層(Business Logic Layer)和數(shù)據(jù)訪問層(Data Access Layer)在內(nèi)的三層架構(gòu),要提供比較完備的服務(wù),一般表現(xiàn)層需分別提供Web頁面、桌面客戶端和移動App等界面支持,而業(yè)務(wù)邏輯層也需要針對不同界面及接入方式分別建立解析、處理和反饋的業(yè)務(wù)邏輯,這兩層的實現(xiàn)難度、工作量、安全性和靈活性均承受了較大壓力。此外,現(xiàn)有架構(gòu)中表現(xiàn)層只負(fù)責(zé)顯示和采集用戶操作,不包含任何業(yè)務(wù)相關(guān)的邏輯處理;數(shù)據(jù)訪問層只提供基本的數(shù)據(jù)訪問,也不包含任何業(yè)務(wù)相關(guān)的邏輯處理;而業(yè)務(wù)邏輯層負(fù)責(zé)處理業(yè)務(wù)邏輯:通過獲取表現(xiàn)層傳來的用戶指令,執(zhí)行業(yè)務(wù)邏輯,在需要訪問數(shù)據(jù)源的時候,直接交給數(shù)據(jù)訪問層進(jìn)行處理;處理完成后,返回必要數(shù)據(jù)給表現(xiàn)層。可見現(xiàn)有架構(gòu)中全部業(yè)務(wù)壓力均由業(yè)務(wù)邏輯層承擔(dān),在業(yè)務(wù)量大、業(yè)務(wù)類型多及業(yè)務(wù)邏輯復(fù)雜的情況下很難保證系統(tǒng)的效率和可靠性。
      [0037]為此,本發(fā)明實施例提供了一種基于松散架構(gòu)的Web服務(wù)方案,通過在表現(xiàn)層與業(yè)務(wù)層之間以及業(yè)務(wù)層與數(shù)據(jù)訪問層加設(shè)統(tǒng)一的接口,實現(xiàn)了對不同訪問方式的統(tǒng)一支持,同時有效降低了工作量,提高了系統(tǒng)效率。如圖1所示,本發(fā)明實施例中的基于松散架構(gòu)的Web服務(wù)方法包括步驟:
      [0038]SI,通過數(shù)據(jù)接口接收用戶數(shù)據(jù),根據(jù)所述用戶數(shù)據(jù)創(chuàng)建所需的對象;
      [0039]S2,根據(jù)各個所述對象創(chuàng)建并執(zhí)行業(yè)務(wù)邏輯,產(chǎn)生數(shù)據(jù)操作請求并相應(yīng)存入緩存和/或隊列;
      [0040]S3,通過數(shù)據(jù)操作接口接收所述緩存和/或隊列中的所述數(shù)據(jù)操作請求,進(jìn)一步封裝后完成對數(shù)據(jù)源的訪問;
      [0041 ] S4,將所述訪問的結(jié)果數(shù)據(jù)返回給用戶。
      [0042]其中,步驟S4中,所述結(jié)果數(shù)據(jù)按照數(shù)據(jù)源、數(shù)據(jù)訪問層、數(shù)據(jù)會話層、業(yè)務(wù)層、月艮務(wù)層的順序自下而上按各層模式依次進(jìn)行封裝,最后由服務(wù)層將數(shù)據(jù)統(tǒng)一提供給表現(xiàn)層的各個用戶界面。
      [0043]在本發(fā)明優(yōu)選實施例中,表現(xiàn)層通過統(tǒng)一的數(shù)據(jù)接口接收用戶數(shù)據(jù)。具體地,表現(xiàn)層在以網(wǎng)站形式提供服務(wù)的同時,還對外提供相應(yīng)的數(shù)據(jù)接口,數(shù)據(jù)接口供自身或合作機構(gòu)的網(wǎng)站及各類客戶端使用,可以滿足PC和移動端的統(tǒng)一訪問,為如1S、Android及各種掌上電腦等設(shè)備的服務(wù)需求提供支持。
      [0044]此外,優(yōu)選地,表現(xiàn)層所有的數(shù)據(jù)都由服務(wù)層來提供(包括但不限于接收用戶數(shù)據(jù)和返回結(jié)果數(shù)據(jù)等)。服務(wù)層不與業(yè)務(wù)層直接耦合,而是通過依賴注入的方式來創(chuàng)建所需的對象,這樣增加了系統(tǒng)的靈活性,當(dāng)需求變化來臨時,可以降低工作量,減少錯誤的發(fā)生。
      [0045]業(yè)務(wù)層按照對象中傳來的用戶指令,創(chuàng)建并執(zhí)行業(yè)務(wù)邏輯,在需要訪問數(shù)據(jù)源的時候,產(chǎn)生相應(yīng)的數(shù)據(jù)操作請求。數(shù)據(jù)操作請求通過隊列保存和分發(fā),以在提高并發(fā)度的同時保證操作的及時性和安全性。為了滿足多地部署,進(jìn)一步可通過緩存的方式去模擬實現(xiàn)Sess1n的效果,保障用戶登錄的有效性;為了盡可能的降低緩存穿透,優(yōu)選通過預(yù)先制定的相對完善的緩存策略,比如緩存的訂閱/發(fā)布機制、緩存的過期機制等,最終達(dá)到提尚網(wǎng)站的吞吐量。
      [0046]在本發(fā)明優(yōu)選實施例中,還在業(yè)務(wù)層和數(shù)據(jù)訪問層的接口層之間抽象出了數(shù)據(jù)會話層,數(shù)據(jù)會話層是對數(shù)據(jù)訪問層的再一次封裝,提供統(tǒng)一的數(shù)據(jù)操作接口,降低復(fù)雜度的同時簡化操作。數(shù)據(jù)訪問層根據(jù)再次封裝的數(shù)據(jù)操作請求完成對數(shù)據(jù)源的訪問。
      [0047]進(jìn)一步如圖2所示,與上述方法一一對應(yīng)地,本發(fā)明實施例還同時提供了一種基于松散架構(gòu)的Web服務(wù)系統(tǒng)1,包括:
      [0048]用戶數(shù)據(jù)模塊101,用于通過數(shù)據(jù)接口接收用戶數(shù)據(jù),根據(jù)所述用戶數(shù)據(jù)創(chuàng)建所需的對象;
      [0049]業(yè)務(wù)模塊102,用于根據(jù)各個所述對象創(chuàng)建并執(zhí)行業(yè)務(wù)邏輯,產(chǎn)生數(shù)據(jù)操作請求并相應(yīng)存入緩存和/或隊列;
      [0050]數(shù)據(jù)訪問模塊103,用于通過數(shù)據(jù)操作接口接收所述緩存和/或隊列中的所述數(shù)據(jù)操作請求,進(jìn)一步封裝后完成對數(shù)據(jù)源的訪問;
      [0051]結(jié)果返回模塊104,用于將所述訪問的結(jié)果數(shù)據(jù)返回給用戶。
      [0052]優(yōu)選地,所述用戶數(shù)據(jù)模塊包括:
      [0053]統(tǒng)一接口模塊,用于通過WebAPI和/或HTTP接口接收包括來自桌面客戶端、移動App和瀏覽器訪問的所述用
      當(dāng)前第1頁1 2 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1