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

Web框架下基于用戶偏好的電子商務信息系統研究

2017-01-12 09:55:42吳清燕
現代電子技術 2016年23期

吳清燕

摘 要: 通過對電子商務平臺的全面需求分析,確定了電子商務系統的基本功能。詳細全面地對系統的功能模塊進行了設計,利用目前相對前沿的技術框架,實現了基于用戶偏好的電子商務系統。最后對系統進行了功能測試與性能測試。功能測試上使用黑盒測試,性能測試進行系統壓力測試。測試結果表明,該系統在功能與性能上均達到了設計要求,在理論研究和實際應用上具有較大的參考價值。

關鍵詞: 電子商務信息系統; Web 框架; 分布式緩存; 黑盒測試

中圖分類號: TN911?34; TM417 文獻標識碼: A 文章編號: 1004?373X(2016)23?0144?04

Research on e?commerce information system based on user preference in Web framework

WU Qingyan

(Hainan Tropical Ocean University, Sanya 572022, China)

Abstract: The comprehensive demands of e?commerce platform are analyzed to determine the basic function of e?commerce system. The functional modules of the system were designed comprehensively. The leading technical framework is used to realize the e?commerce system based on user preference. The functional test and performance test were performed for the system. The black?box test is used for functional test, and the system pressure test is used for performance test. The test results indicate that the system satisfies the design requirements of function and performance, and its theoretical research and application have great reference value.

Keywords: e?commerce information system; Web framework; distributed cache; black?box test

電子商務平臺是一種為企業和個體戶服務的平臺,它的開發和建立使得企業可以在互聯網上經營,脫離了傳統的店鋪方式。在做商品推薦時,傳統的電子商務系統是以人為主體的手工操作,運營人員需要投入大量的時間、精力,推薦的商品往往不易滿足每個人的需要,因此難免會出現局限性[1]。而基于用戶偏好的電子商務系統是由自動推薦算法建立起來的,以處理消費者的行為數據,自動為決策者提供相應推薦商品的系統,將大量復雜的用戶數據處理交給后臺服務器,使不同的顧客及時地獲得所需要的推薦商品,為商家帶來了財富,為顧客帶來了便捷[2]。

1 系統設計

1.1 總體設計

1.1.1 系統框架設計

本系統選擇快速高效的PHP語言作為程序后端開發語言,它是一種平臺兼容性極好、運行高效的腳本編程語言。PHP開發者在長期的開發過程中會不斷接觸和使用重復的代碼和產品,同時也會開發各種新的模塊[3]。因此傳統單純的使用PHP開發程序已不能滿足開發人員的需求,這時通過PHP框架來實現對這些豐富資源的管理,構建良好的系統架構與縮短開發時間是必不可少的開發環節。本系統采用Yii框架進行快速、高效的開發。Yii框架是當前主流適用于大型網站開發的框架之一。由于其采用面向對象思想編寫而成,同時又擁有非常多的封裝功能,使其成為眾多開發者首選的框架。從安全性來說,Yii具有對用戶輸入的后端驗證,輸出的過濾以防止SQL注入及XSS與CSRF攻擊。本系統后端使用PHP語言結合Yii框架進行開發,前端使用HTML,JQuery,CSS語言。

本系統以index.php文件作為入口訪問protected文件夾里的Controller控制器。首先訪問的是Controller文件夾中的index(Controller).php文件中的actionIndex方法[4]。此方法無需輸入特定的URI,為Yii的默認路徑訪問網站的首頁。網站首頁中具有多種多樣的功能,每一個功能即對應index(Controller).php中的一個方法。系統會根據用戶在主頁執行的不同功能從而調用一個index(Controller).php中以action為前綴的方法[5]。

1.1.2 分布式緩存設計

本系統使用Redis作為分布式內存緩存,商品推薦功能采用Redis的有序集合數據類型進行推薦計算。為保證系統可靠性,采用Master?Slave(主從)同步。另外,本系統并用Redis的RDB持久化和AOF持久化,這種方式適合于用戶進行備份。

1.1.3 系統功能結構圖

根據前面的角色用例分析,系統從前臺和后臺的角度給出功能結構圖,系統前臺功能模塊如圖1所示,系統后臺功能模塊如圖2所示。

1.2 系統功能模塊設計

1.2.1 注冊登錄

對于系統前臺,未登錄用戶與登錄用戶的功能有所區別。在未登錄情況下,系統只提供商品瀏覽和商品推薦功能,用戶想要完成商品的購買,必須完成消費者用戶相關信息的注冊,并且登錄系統。對于系統后臺,商家用戶和管理員用戶也需要登錄進入系統[6]。不同的是商家具有注冊功能,需要填寫商家用戶基本信息后交由系統管理員審核,審核通過后使用本系統,而管理員用戶賬號則由開發人員手工進行數據庫配置,這樣保證了系統的安全性。

注冊時可以選擇不同身份進行注冊,登錄系統時可以選擇“記住我”選項,當用戶選擇此選項時,服務器會分配用戶一個長期有效的COOKIE并在服務端產生一個相應的SESSION,當用戶在有效期內重新打開頁面時不會提示需要重新登錄。同時用戶的登錄請求是AJAX(異步)請求,無需刷新登錄頁面即可提示登錄成功或失敗[7]。用戶登錄流程如圖3所示。

1.2.2 商品展示

系統根據用戶的搜索內容進行關鍵字匹配,首先將匹配到的商品篩選出來,再根據得到的商品進行同類目的查詢,將同類商品按賣出數量列出。商品在列出時使用分頁算法,以分頁的形式列出。

商品列表顯示每一種商品的名稱、描述、價格、銷售數量及評論數量,同時顯示“購買”與“加入購物車”。當用戶點擊“購買”與“加入購物車”時系統會判定當前用戶是否已登錄,商品列表顯示每一種商品的名稱、描述、價格、銷售數量及評論數量,同時顯示“購買”與“加入購物車”。如未登錄則會提示用戶登錄,如果用戶已登錄則會生成一份訂單。對于系統后臺,商家可以增加商品、刪除商品、修改商品信息以及查詢所擁有的商品。增加商品時需要填寫商品信息。商品信息包括商品名稱、描述、價格、商品類別。商家同時可以在后臺回復用戶對已售出商品的評論。

1.2.3 訂單管理

當消費者用戶在前臺點擊商品“購買”或“加入購物車”時,都會和商家簽訂購買合同。購物車中的商品訂單由商品所屬的商家生成,對于每一個不同商品,如果其所屬的商家相同,則只會生成一份訂單,否則會生成多份訂單[8]。生成訂單后,用戶就可以對訂單進行支付、取消訂單操作,同時后臺商品所屬的商家則會顯示生成的訂單。商家用戶負責在后臺處理本店鋪的所有訂單。商家需要根據消費者用戶的相應信息負責商品的配送。商家對訂單具有確認訂單、取消訂單操作。

1.2.4 商品推薦

本系統提供了一種基于Redis系統的商品智能推薦方法,基本思想是:根據某一商品[p0]在某一時間段的所有購買者,獲得這些購買者在該時間段的其他購買商品信息,按照不同的排列組合的方式,獲取相關交集作為推薦商品進行推薦;在上述過程中,還利用Redis系統Sort?Set與List數據結構,按照購買時間的先后賦予權值進行時序排序,從而能夠得到更有時效性的推薦商品。

1.2.5 權限管理

對系統中所有的角色進行管理,其中管理員分為一級管理員和二級管理員。一級管理員具有系統中的最高權限,具有對商家的審核、商品信息與訂單信息的修改等權限,一級管理員具有系統管理的所有功能。二級管理員主要是系統測試與錯誤排查者,只具有對數據的讀取權限,沒有任何修改權限。

對于商家而言,只具有操作本店鋪商品的權限,分為運營人員、售前和售后處理人員。運營人員負責修改商品的相關信息,對所管轄店鋪內的商品與訂單具有讀寫權限。售前人員主要在售前負責答疑消費者任何關于產品的問題,售后處理人員主要負責從事與客戶進行售后商品問題的交涉,對訂單及商品只具有讀取的權限。

1.3 數據庫設計

1.3.1 概念數據模型設計

在做概念數據模型設計時,系統用戶分為三種角色:消費者、商家、管理員用戶。每種用戶都有屬于自己的特征:消費者用戶具有生日屬性,因此在消費者生日時可以做相應的活動;商家用戶具有自己的聲譽屬性,同一商鋪可以具有運營人員、售前與售后人員,因此還具有特權屬性,不同特權屬于同一店鋪ID下的商家用戶具有的功能不同;管理員同樣具有不同的權限,因此有等級屬性。基于數據庫設計規范,避免冗余基礎上,這里將三種不同角色具有相同的屬性放入user表,分別由不同的角色表繼承其主屬性(UserID),同時不同角色表里分別有自己獨有的屬性,包括商家(shop)表中具有字段shopID與userID作為聯合主鍵。

1.3.2 物理數據模型設計

物理數據模型是數據表具體的實現,在邏輯數據模型基礎上描述數據在存儲介質上的組織結構。與數據庫管理系統相關。

user(用戶)表:存放系統中所有用戶公有信息;

customer(消費者用戶)表:存放消費者用戶獨有屬性;

admin(管理員用戶)表:管理員用戶具有管理等級屬性;

shop(商家用戶)表:存放商家用戶獨有屬性;

order(訂單)表:存放系統中所有訂單;

orderUser(訂單?用戶)表:存放每個訂單中消費者和商家的關系;

product(商品)表:存放商品的基本信息;

orderProduct(訂單?商品)表:存放訂單與商品的關系;

comment(評論)表:存放訂單完成時對商品的評論信息。

2 系統實現

2.1 系統平臺與框架的實現

(1) 實現平臺

本系統使用Eclpise作為開發平臺。Eclipse是一個多語言IDE,支持PHP的開發。Eclipse同時具有良好的界面,豐富的功能,含有對代碼進行自動格式化,代碼錯誤提示等常用功能。本系統在Eclipse上進行了前臺頁面設計、后臺邏輯處理與功能的開發工作。

(2) 實現框架

Yii是一個非常適合大型Web開發而產生出的高性能PHP框架。本系統不僅因為Yii的高性能與豐富的功能,還具有大量的手冊提供參考。使用Yii時需要對其進行配置,需要滿足該框架使用的最小需求,因此需要添加PHP的擴展PDOMySQL,這樣才能訪問MySQL數據庫。

在配置好Yii框架后,本系統使用了Yii框架的強大代碼生成器Gii功能。使用Yii帶有的Gii生成器生成Model代碼時,簡單方便地將數據庫中的數據庫表轉化為實體類代碼,在類代碼中具有數據表的所有屬性,并包含各式各樣的驗證規則。這樣極大地簡化了開發者的工作,只需考慮如何設計數據表即可。

2.2 信用風險控制

用戶選擇注冊后,會進入第一個注冊頁面,需要用戶輸入用戶名、郵箱、密碼及確認密碼。點擊下一步之后消費者用戶輸入消費者信息,商家用戶輸入商鋪信息。

用戶點擊“注冊”時,發送異步請求。首先根據用戶名和密碼訪問數據庫USER表,如果訪問到數據,則提示賬號存在并將結果返回給前端,紅字提示。否則后端繼續會根據注冊規則校驗用戶提交的每一條信息。通過檢驗后,提示注冊成功,將注冊信息存入相關數據表中。

用戶點擊“登錄”時,發送異步請求。首先根據用戶名和密碼訪問數據庫USER表,如果訪問到數據,則跳轉至首頁并在右上角顯示賬戶名稱。當用戶選擇“記住我”時,服務器會生成一個7天的SESSION并分配對應的COOKIE給用戶,用戶將在7天內訪問系統時無需登錄,否則用戶在關閉瀏覽器后需要重新登錄系統。

2.3 商品展示模塊的實現

商品展示是電子商務系統中的一項重要內容,無論用戶是否登錄都可以瀏覽所有商品。用戶可以在左上角選擇商品類別,商品類別是在商鋪運營者設置商品信息時填寫。在商品展示頁面中,顯示商品圖片、商品名稱、商品描述、商品價格,這些信息在系統product表中存取。在本系統中,還可以對商品進行關鍵字搜索,系統會將符合關鍵字描述的商品存入展示列表,并以分頁的形式展示出來。本系統中由于商品信息時訪問量最多的信息,因此將商品信息存入Redis緩存中,這樣無需每次查詢數據庫,大大減輕了數據庫的訪問壓力,提高了系統的整體效率。

2.4 訂單管理模塊的實現

訂單管理的過程就是對信息的查看和狀態的修改。分為前臺訂單操作和后臺訂單操作,分別對訂單進行處理。

(1) 前臺訂單操作。消費者用戶點擊商品購買,或者加入購物車時,會產生一個店鋪訂單,用戶再次將相同商鋪下的商品加入購物車時,不會生成新訂單,但是訂單總額會發生變化。用戶支付完成時,訂單從“未付款”狀態變為“已付款且未發貨”狀態,當商鋪發貨后并在后臺維護訂單時才會繼續修改訂單狀態。

(2) 后臺訂單操作。商鋪用戶可對本商鋪下所有訂單進行查詢操作,商鋪用戶通過查詢訂單后點擊訂單號即可進入訂單操作界面(只有商鋪運營者才有權限操作訂單)。當商鋪發貨后(也可以選擇取消發貨)可修改相應訂單狀態,發貨后訂單由“已付款且未發貨”狀態變為“已付款且發貨”狀態,后續只有消費者用戶收到貨物后選擇訂單完成或者退款才可繼續修改訂單狀態。后臺商鋪訂單查詢結果如圖4所示。

2.5 商品推薦模塊的實現

當消費者用戶進行商品瀏覽或是商品搜索時,系統根據設定好的數量(本系統設置為5個推薦商品)推薦商品。當用戶瀏覽商品A時,如果商品A在2小時內被購買過,則將購買A商品的顧客按時間順序加入至Redis的有序集合中,將這些顧客在2小時內同時購買過其他商品放入Redis的有序集合中,按照商品推薦設計算法所屬的步驟得到最終推薦的5個商品(沒有則取同類中暢銷最好的5個商品)進行推薦。如果一個用戶并未登錄,或是推薦算法沒有計算出符合數量的結果時,則系統會向用戶推薦網站當前最為暢銷的商品。推薦商品的展示見圖5。

2.6 權限管理模塊的實現

商鋪運營者可根據員工的不同職位分配對本商鋪所擁有的權限。一級管理人員同樣也可進行權限的分配,一級管理人員具有所有訂單與商品的修改權限,二級管理員只具有查看權限。權限管理功能的實現主要通過對用戶信息的修改,根據用戶的業務范圍和職位對其進行權限設置,設置適用于該用戶的權限等級。

3 系統測試

3.1 系統功能測試

功能測試主要檢測系統是否符合需求,達到預期的標準。本系統功能測試采用動態監測法,即通過正在運行的程序檢測發生錯誤的過程。動態測試含有以下三種:白盒測試、黑盒測試與灰盒測試。

白盒測試在邊界上進行范圍控制,檢測出所有循環路徑,最終得到測試報告;黑盒測試的基本含義是測試人員將整個系統看做一個不透明的黑盒子,不考慮程序具體的實現,直接對系統進行功能性測試;灰盒測試是介于黑盒測試與白盒測試之間的一種測試,類似白盒測試的方法進行,通過代碼的編寫及函數的調用實現。

從測試方法上看,本系統測試使用的測試技術屬于黑盒測試。通過設計測試用例對各功能點進行測試。通過測試可得,系統的全部功能符合預期。

3.2 系統性能測試

基于用戶偏好的電子商務系統的性能測試使用LoadRunner進行測試。其中LoadRunner包含三個重要組件,依次為Virtual User Generator,Controller與Analysis。

本次測試主要測試系統的處理極限,不斷的為系統施加負載,觀察性能曲線圖及事務成功與失敗數量的變化確定性能是否達到瓶頸。根據性能的分析結果對其進行調優。

在本次測試過程中,首先用Virtual User Generator進行測試,該錄入工作設定好要訪問的URL,以便在下一個環節進行多用戶模擬。在設置過程中可以選擇放入事務,當事務檢測成功時會告知測試者。其次用Controller模擬用戶并發數,設置好并發數與用戶加入時間和終止時間。設置時可以選擇多用戶同時加入或者用戶分批加入。本次測試中為500位用戶同時加入開始測試。最后使用Analysis組件記錄測試結果,包括缺陷報告和測試日志,Analysis組件還可以進行統計和分析測試結果。從結果中分析得出,本系統支持同一時刻并發數大約為500。系統主要功能全部通過測試,符合預期。

4 結 論

本文在研究了當今主要的電子商務模式的基礎上,提出了一種商品推薦算法,并使用Yii框架與Redis技術設計并實現了基于用戶偏好的電子商務系統。在設計及實現的過程中,在對代碼流程的優化及數據庫查詢的效率上有了新的認識和見解,并封裝了若干能夠提高開發效率的類庫。在用戶體驗及易用性方面,本系統還有待改善及提高,在大數據量的查詢響應方面,有待繼續完善。

參考文獻

[1] JARVIS R A. A perspective on range finding techniques for computer vision [J]. IEEE transactions on pattern analysis and machine intelligence, 1983, 5(2): 122?139.

[2] 潘雨相.基于PKI技術的電子商務安全支付系統設計[J].現代電子技術,2014,37(12):93?95.

[3] ZHANG J, WANG Z J, ZHUS R, et al. Massive data MapReduce fingerprint discriminant algorithm based on Hadoop [J]. Applied mechanics and materials, 2012, 263: 2655?2660.

[4] SCHULTZ E. Security views [J]. Computers & security, 2004, 23(8): 533?541.

[5] 王艷君.新環境下的網店購物系統的設計與實現[J].現代電子技術,2015,38(11):119?122.

[6] 劉華星,楊庚.HTML5:下一代Web開發標準研究[J].計算機技術與發展,2011,21(8):54?58.

[7] 韓鯤,薛輝.Web數據庫的安全審計機制[J].信息安全與通信保密,2011(6):92?94.

[8] 金濤,武娜.實時數據庫的核心技術[J].工業控制計算機,2012,25(4):94?95.

主站蜘蛛池模板: 福利在线不卡一区| 欧美a在线看| 国产成人综合久久精品尤物| 久久福利片| 国产精品网址在线观看你懂的| 国产精品99久久久久久董美香| 2021国产乱人伦在线播放| 国产在线观看第二页| 综合色区亚洲熟妇在线| 日韩国产黄色网站| 亚洲无码91视频| 爽爽影院十八禁在线观看| 免费A∨中文乱码专区| 成年人视频一区二区| 中文字幕无码av专区久久| 潮喷在线无码白浆| 日韩无码黄色| 国产亚洲精品无码专| 国产精品一区在线观看你懂的| 欧美在线导航| 中文字幕久久亚洲一区| 久久久久无码精品| 国产真实自在自线免费精品| 国产丝袜无码一区二区视频| 国产女人爽到高潮的免费视频 | 亚洲天堂.com| 国产69精品久久久久孕妇大杂乱 | 午夜视频日本| hezyo加勒比一区二区三区| 欧美高清三区| 国产伦片中文免费观看| 网久久综合| 国产亚洲美日韩AV中文字幕无码成人| 欧美亚洲欧美区| 国产一区二区视频在线| 99热这里只有精品免费国产| 日韩少妇激情一区二区| 国内精品91| 欧美高清日韩| 久久天天躁狠狠躁夜夜2020一| 国产精品妖精视频| 日本一本在线视频| 无码免费视频| 国产新AV天堂| 91无码人妻精品一区二区蜜桃| 色妞永久免费视频| 日韩精品中文字幕一区三区| 国产在线视频福利资源站| 国产亚洲精品无码专| 99精品国产自在现线观看| 久久久久夜色精品波多野结衣| 久久精品无码国产一区二区三区| 亚洲欧美色中文字幕| 欧美日韩在线亚洲国产人| 高清久久精品亚洲日韩Av| 欧美 亚洲 日韩 国产| 韩日无码在线不卡| 最新国产你懂的在线网址| 中文字幕在线一区二区在线| 国产一级二级三级毛片| 国产午夜福利在线小视频| 91麻豆国产视频| 亚洲丝袜中文字幕| 欧美伊人色综合久久天天| 色成人亚洲| 欧美日韩国产成人高清视频| 国产精品久久国产精麻豆99网站| 午夜在线不卡| 亚洲欧美日韩精品专区| 2020久久国产综合精品swag| 免费视频在线2021入口| 国产精品久久久久久久伊一| 四虎AV麻豆| AV色爱天堂网| 精品撒尿视频一区二区三区| 国产一级妓女av网站| 国产不卡一级毛片视频| 无码免费试看| 无码粉嫩虎白一线天在线观看| 亚洲天堂视频在线观看免费| 91精品综合| 日韩在线2020专区|