999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

互聯網商品交易業務支撐引擎的分析與設計

2021-07-28 23:17:12謝劍
現代信息科技 2021年2期

摘? 要:互聯網商品交易市場發展迅猛,交易規模及交易額屢創新高,其中,各類業務支撐引擎發揮了不可替代的作用,針對“面向對象編程(高級)”教學內容,對通用業務支撐引擎進行了分析與設計。軟件以C++及Lua腳本語言為載體進行設計,主要模塊包括Lua環境綁定及注冊模塊、核心業務場景模塊、數據加密模塊、數據通信模塊、數據庫操作模塊、日志模塊、配置模塊等,引擎體系功能完備,性能高效且穩定,具有較高的教學指導意義。

關鍵詞:互聯網商品交易;業務引擎;教學指導

中圖分類號:TP391.3? ? ? ?文獻標識碼:A 文章編號:2096-4706(2021)02-0024-04

Abstract:Internet commodity transaction market is developing rapidly,and the scale and amount of transactions have repeatedly hit new highs. Among them,various business support engines have played an irreplaceable role. Aiming at the “Object Oriented Programming(Advanced)” teaching content,general business support engines have been analyzed and designed. The software is designed with C++ and Lua scripting language as the carrier. The main modules include Lua environment binding and registration module,core business scene module,data encryption module,data communication module,database operation module,log module,configuration module,etc.,the engine system has complete functions,high efficiency and stability,and has higher teaching guidance significance.

Keywords:internet commodity transaction;business engine;teaching guidance

0? 引? 言

互聯網商品交易是指通過互聯網或其他電子渠道,針對個人或家庭需求銷售商品以及提供服務,主要以B2B及B2C兩種交易模式來實現交易。商品交易活動是通過互聯網進行信息的組織及傳遞,實現了有形商品和無形商品所有權的轉移及服務的消費。近年來,得益于通信技術的發展和普及,國內互聯網用戶逐年攀升,特別是手機用戶增長迅猛,使得網絡購物業已成為我國消費者較為重要的消費方式,年網絡交易總額已近10萬億元,如此龐大市場規模的另一個支點就是互聯網技術,而其中的業務支撐引擎則是較為關鍵的一環,它為高并發的交易訂單在眾多用戶與商戶之間的正常流轉提供了保障。

通過對業務支撐引擎軟件的分析與設計,使學生了解更多有關互聯網后臺程序的技術細節,同時增強了對“面向對象編程(高級)”課程知識點的理解與掌握,可提升學生的實踐動手能力。

1? 系統需求分析

根據商品交易業務復雜多變的特性,在設計時采用了C++與Lua腳本語言相結合的方式,C++語言用于完成框架的通信、數據庫交互等基本功能,Lua語言則在框架的基礎上進行業務流程代碼的開發。Lua語言作為一種腳本語言,具有編程簡單、快速響應的特點,對于商品交易領域要求快速接入同時需求多變的應用場景具有明顯的優勢。因此軟件功能設計上主要采用Lua環境綁定及注冊模塊、核心業務場景模塊、數據加密模塊、數據通信模塊、數據庫操作模塊、日志模塊、配置模塊。Lua環境綁定及注冊模塊用于在C++的框架下將Lua代碼執行的環境進行綁定,并將其他C++類功能函數注冊到Lua環境中,以便可以在Lua腳本中直接調用,實現Lua代碼與C++代碼的相互配合調用。核心業務場景模塊包含服務器模塊、生產—消費者模塊、定時器模塊,可根據配置將軟件注冊為對應功能的系統服務。服務器模塊主要用于接收網絡請求,生產者—消費者模塊主要用于篩選符合條件的訂單記錄并發處理,定時器模塊間隔固定時間運行一次以完成特定業務功能。數據加密模塊用于對交互的報文數據進行加密處理,發送端對數據進行加密生成簽名信息,接收端進行同樣的加密操作并進行對比驗簽,避免數據在傳輸過程中被篡改而造成損失。數據通信模塊用于實現基礎的http報文交互功能,確保報文交互高效穩定。數據庫操作模塊用于執行與數據庫相關的操作,保證數據安全存儲。日志模塊主要用于訂單業務流程的日志記錄,便于對訂單狀態的跟蹤分析。配置模塊為系統啟動提供初始配置,避免改動代碼,便于靈活部署。

2? 開發環境及關鍵技術

軟件是基于Windows 10系統進行的設計,集成開發環境采用Visual Studio 2018,功能強大,操作簡便,可有效提高編程效率。

編程語言采用C++與Lua相結合的模式,充分結合兩種語言各自的優勢,使得軟件功能穩定且易于擴展,因此兩種語言的相互正確調用是此軟件的關鍵技術點之一,這里采用以C++語言為主體,以Lua語言為嵌入語言的方式進行設計。

在設計時將互聯網常用的三種業務場景支撐后臺程序集成到一個軟件中也是個關鍵的技術點,通過配置啟動對應的模塊功能,增加了開發的難度,但卻簡化了程序部署等后期維護的工作量,從長遠來看此舉更為有利。

數據庫采用目前廣泛應用的開源數據庫——MySQL數據庫,其具有穩定、高效、易于開發的優點。為進一步提高數據庫的性能,在實現基本的增刪改查功能的基礎上增加了數據庫連接池的設計,通過減少數據庫連接對象的創建及釋放操作,可有效提高并發操作性能。

數據通信則是采用Windows系統下最高效的異步完成端口網絡通信模型,以期實現單平臺下最佳的網絡報文通信能力,確保高并發訂單接收的準確性。

3? 系統功能結構設計

軟件系統功能結構圖如圖1所示,其主要由7個模塊構成。下文從類圖的角度逐一說明各模塊的設計。

3.1? Lua環境綁定及注冊模塊

Lua代碼并不是直接被Lua解釋器解釋執行,而是先被編譯為字節碼,然后再交由lua虛擬機去執行。因此Lua腳本語言在執行之前,就需要在C++代碼中對Lua虛擬機進行綁定,通過創建一個與之相對應的狀態結構來實現對當前Lua環境的管理,上述步驟均可以通過相關的動態庫函數來實現,方便快捷。在綁定好Lua環境之后,就可以往該環境中注冊可在Lua腳本中直接調用的C++函數,注冊時需要提供C++的類名及對應函數,同時在注冊時需要指定對應環境的狀態結構。通過此步驟即可在Lua腳本中調用其他各功能模塊中的函數,以完成業務邏輯的編碼工作。該模塊的主要類圖如圖2所示,該類除了實現前述功能外,同時也是一個線程基類,后續部分模塊類需要繼承該類,才能實現函數的相互調用。

3.2? 核心業務場景模塊

核心業務場景模塊包含服務器模塊、生產—消費者模塊、定時器模塊。

服務器模塊用作報文通信的接收服務端,負責接收來自網絡上不同節點商戶或用戶的請求,具有高并發的特點,若不能滿足此項要求,會直接影響系統收單數量,降低收益。

生產者—消費者模塊是指由生產者腳本篩選符合條件的訂單,再分配給消費者腳本進行處理,兩者之間的關系是1:N,即1個生產者匹配多個消費者,如此達到并發處理的效果,快速將系統中的訂單再次分發到下游商家或直接分發到供應商系統。

定時器模塊主要用于完成定時執行的監控任務,系統中的訂單總會有少數訂單會出問題,比如訂單超時,為了實現自動掃描出現問題的訂單,需要有定時程序不斷輪詢檢查,以便及時發現問題訂單并及時處理,避免造成不必要的損失。

如圖3所示,三個模塊類均繼承了cluabase類以實現各線程的Lua環境綁定及操作,也分別實現了各自線程的啟動結束的函數,同時增加了加載配置信息操作,以便處理各個模塊自身的配置信息。

3.3? 數據加密模塊

數據加密模塊用于確保數據傳輸的安全性,數據報文在網絡中傳輸時可能會被惡意截取篡改,輕則造成單筆交易訂單的數據記錄出現問題,重則對整個數據庫內的數據造成不可逆的破壞,后果不堪設想,所以需要在數據發送前進行加密計算獲取簽名,在接收端進行簽名驗簽,確保數據無誤后才可對其進行后續處理。模塊主要類圖如圖4所示,目前設計上只使用兩種加密算法,一個是MD5信息摘要加密算法,一個是Des加密算法,這兩種算法在實際應用中被廣泛采用,安全度也較高,可有效驗證數據安全性。

3.4? 數據通信模塊

數據通信是互聯網軟件的核心功能,http報文是網絡通信的主要方式之一,本文設計的引擎系統采用該方式進行通信,數據通信模塊需要解決http報文的組包、發送、接收、解析等功能。采用完成端口異步通信能最大限度地保證數據發送及接收的效率,但其組包及解析功能相對復雜,需要考慮的情況比較多。圖5為該模塊的主要類圖,CSocketHandle類主要負責底層的套接字通信,而chttpprocess類繼承了csockehandl類,在繼承基類功能的基礎上添加了http報文的兩種請求方式,即Get和Post方式,兩種方式在組包及解析上有較大不同,需要區別對待。

3.5? 數據庫操作模塊

數據庫操作是所有軟件的必備功能,該模塊功能組件化后也可直接集成于不同的軟件系統,省時省力。從綜合性能以及成本方面的考慮,軟件設計采用MySQL數據庫,在完成基本數據庫操作功能后,性能是高并發應用軟件主要的優化點,這里采用常用的數據連接池。圖6為該模塊的主要類圖,cdatabase類圖提供基礎的數據庫增刪改查功能,在此基礎上,cdbconncetpool在啟動時創建多個數據庫連接對象并將它們保存到隊列中,需要時即從隊列中提取,結束后再將其歸還到隊列中,此方法在高并發的數據庫訪問下可避免頻繁地創建和釋放數據庫連接對象,減少資源消耗,有效地提高了訪問性能。

3.6? 日志及配置模塊

日志模塊用于記錄時間及各函數調用情況,在函數調用前后及函數內部代碼的執行過程中都需要日志輸出,便于分析業務流程及查找問題,其類圖如圖7所示。

配置模塊用于配置信息的讀取,比如數據庫信息的配置、核心業務場景模塊信息的配置等,都通過配置文件提供,其類圖如圖8所示。

4? 結? 論

本文分析了互聯網商品交易業務支撐引擎的通用需求,并對引擎的設計展開描述,后臺業務引擎可幫助進行線上商品交易的企業實現定單接收、訂單轉發、異常訂單監控管理等產品鏈中的核心業務功能。本案例應用場景為“面向對象編程(高級)”課程,通過對軟件系統設計的分析與描述,增進學生對行業應用的了解,提升了軟件系統分析與設計的能力。

參考文獻:

[1] 吳杰明,方英蘭.軟件工程實例教程 [M].北京:清華大學出版社,2010.

[2] 王英英.MySQL8從入門到精通 [M].北京:清華大學出版社,2019.

[3] 陳曉軍,朱銓荃,何欣,等.網站后臺通用管理系統分析與設計 [J].技術與市場,2009(9):11-12.

[4] 李偉紅,龔衛國,馬任飛,等.基于C/S和B/S的大中型商場后臺系統的設計與實現 [J].計算機應用研究,2004(5):94-96+162.

[5] 劉天卓.基于GIS技術的城市交通信息查詢系統分析與設計 [D].上海:復旦大學,2009.

作者簡介:謝劍(1987.06—),男,漢族,湖南長沙人,軟件學院專任教師,初級職稱,碩士,研究方向:計算機應用,圖像處理。

主站蜘蛛池模板: www中文字幕在线观看| 欧美成人一区午夜福利在线| 九色91在线视频| 亚洲91精品视频| 久久婷婷五月综合色一区二区| 色综合天天视频在线观看| 亚洲永久色| 91国内视频在线观看| AV不卡在线永久免费观看| 少妇精品网站| 国产成人av大片在线播放| 久久精品人人做人人| 免费网站成人亚洲| 亚洲一级毛片免费观看| 五月天天天色| 国产在线视频导航| 久久久噜噜噜| 在线观看免费国产| 午夜福利无码一区二区| 欧美日韩午夜视频在线观看| 91久久国产热精品免费| 亚洲福利视频一区二区| 日韩一级二级三级| 亚洲av色吊丝无码| 国产精品无码久久久久久| 亚洲色图综合在线| 中文字幕永久视频| 欧美一级爱操视频| 美女一区二区在线观看| 成人午夜亚洲影视在线观看| 九九热在线视频| 多人乱p欧美在线观看| 新SSS无码手机在线观看| 精品免费在线视频| 久久国产热| 综合社区亚洲熟妇p| 伊人色在线视频| 狠狠综合久久| 日韩天堂视频| 亚洲国语自产一区第二页| 亚洲视频四区| 日韩视频免费| 麻豆精品在线| 99久久亚洲综合精品TS| 国产一区二区三区在线观看视频| 国产永久免费视频m3u8| 亚洲Aⅴ无码专区在线观看q| 在线观看的黄网| 一本视频精品中文字幕| 天天干天天色综合网| 狠狠干综合| 99re在线视频观看| 国产乱子伦视频在线播放| 国产一级小视频| 日本一区中文字幕最新在线| 日韩经典精品无码一区二区| 欧美三级视频在线播放| 欧美日韩在线亚洲国产人| 九色综合视频网| 国产成人艳妇AA视频在线| 国产99免费视频| 强奷白丝美女在线观看 | 国产99视频免费精品是看6| 高清大学生毛片一级| 国产a v无码专区亚洲av| 区国产精品搜索视频| 国产内射一区亚洲| 欧美成人午夜在线全部免费| 亚洲中文字幕国产av| 怡春院欧美一区二区三区免费| 99在线视频精品| 女人18毛片水真多国产| 欧美国产日产一区二区| 欧美视频免费一区二区三区| 国产丝袜啪啪| 免费A级毛片无码免费视频| 一本一本大道香蕉久在线播放| 久久久成年黄色视频| 国产成人喷潮在线观看| 国产v精品成人免费视频71pao| 香蕉蕉亚亚洲aav综合| 欧美区在线播放|