導(dǎo)購網(wǎng)站的核心技術(shù)解析發(fā)布者:本站 時間:2020-05-05 13:05:19
導(dǎo)購網(wǎng)站是給消費(fèi)者提供網(wǎng)絡(luò)購物指導(dǎo)的服務(wù)類網(wǎng)站,其職責(zé)是解決消費(fèi)者心理的種種疑慮,引導(dǎo)幫助消費(fèi)者省時省力的搜索到理想的商品并實現(xiàn)購買,甚至挖掘出消費(fèi)者潛在的購買欲望。導(dǎo)購網(wǎng)站設(shè)計應(yīng)考衡快速更新的龐大數(shù)據(jù)及大量并發(fā)訪問的場景,提出相應(yīng)的解決方案。
1 導(dǎo)購網(wǎng)站架構(gòu)方面的訴求
互聯(lián)網(wǎng)行業(yè)生存在快魚吃慢魚的時代,面對數(shù)億的用戶規(guī)模,不能簡單依靠調(diào)研及產(chǎn)品規(guī)劃妄圖使網(wǎng)站建設(shè)一步到位。導(dǎo)購網(wǎng)站的UI以及功能需要快速開發(fā)、快速迭代,根據(jù)收集的網(wǎng)站用戶習(xí)慣數(shù)據(jù)進(jìn)行分析,找出問題并快速做出調(diào)整。
導(dǎo)購網(wǎng)站前端和后端技術(shù)關(guān)注點(diǎn)不同,需要能夠獨(dú)立開發(fā)和獨(dú)立演進(jìn)。網(wǎng)站前端需要關(guān)注視覺營銷效果,根據(jù)不同發(fā)展階段、不同時間和不同用戶,快速改變網(wǎng)站風(fēng)格;后端重點(diǎn)考慮兩個方面:(1)為前端提供統(tǒng)一接口。(2)高并發(fā)情況下保障網(wǎng)站瀏覽的速度。WEB容器支持熱部署,部署簡單并能夠平滑擴(kuò)容。
2 導(dǎo)購網(wǎng)站的關(guān)鍵技術(shù)解析
2.1 WEB應(yīng)用框架的選擇
基于JAVA的Struts應(yīng)用框架太重,不能滿足快速迭代的要求。目前在國內(nèi)最流行的基于PHP的WEB應(yīng)用框架簡單易用,開發(fā)出來的產(chǎn)品性能高,但需要寫較多代碼,開發(fā)周期長。綜合導(dǎo)購網(wǎng)站快速開發(fā)的需要及低成本開發(fā)的現(xiàn)實要求,選擇DJANGO/PYTHON作為系統(tǒng)的WEB應(yīng)用框架。
Python語法簡潔而清晰,具有豐富和強(qiáng)大的類庫。Django 是Python編程語言驅(qū)動的開源模型-視圖-控制器(MVC)風(fēng)格的 Web應(yīng)用程序框架,具有便捷、快速、高效的特點(diǎn)[1].導(dǎo)購網(wǎng)站對網(wǎng)站瀏覽者提供的主要是搜索和瀏覽商品功能,對網(wǎng)站管理員提供主要為商品錄入及權(quán)限等功能,基于DJANGO/PYTHON的WEB應(yīng)用框架能迅速的實現(xiàn)這些功能的開發(fā)。
2.2 前端和后端分離
前端開發(fā)和后端開發(fā)應(yīng)用的技術(shù)以及關(guān)注重點(diǎn)不一樣。前端開發(fā)人員關(guān)注的是UI,是網(wǎng)站的樣式,是視覺營銷效果,是系統(tǒng)使用的體驗;后端開發(fā)人員關(guān)注的是數(shù)據(jù)庫、緩存系統(tǒng)以及功能邏輯。
導(dǎo)購網(wǎng)站前端和后端獨(dú)立開發(fā),代碼完全分開,前后端開發(fā)人員可以各自進(jìn)行開發(fā)和單元測試,極大的提高了開發(fā)效率。前端的各種頁面都是模板化的,例如首頁,可以將其從上到下分為Header、導(dǎo)航條、商品列表以及Footer,根據(jù)后端返回的數(shù)據(jù)在用戶本地渲染成實際頁面,減少后端渲染對WEB應(yīng)用服務(wù)器造成的壓力。網(wǎng)站的各種要素,包括類目、商品、品牌、廣告位以及營銷活動等進(jìn)行建模入庫,前端通過AJAX接口,傳入資源類型、類目、關(guān)鍵字、標(biāo)簽以及資源名稱從后端獲取數(shù)據(jù);而后端從數(shù)據(jù)庫或者緩存系統(tǒng)中過濾查詢出數(shù)據(jù)后,全部結(jié)構(gòu)化為JSON數(shù)據(jù)返回給前端。
2.3 圖片緩存技術(shù)
圖片在導(dǎo)購網(wǎng)站中具有重要地位,能有效地形成消費(fèi)者的主觀印象,帶來強(qiáng)烈的視覺沖擊,促進(jìn)消費(fèi)者購買。網(wǎng)站必須設(shè)計精美的圖片,每種商品都需配備體現(xiàn)營銷創(chuàng)意的大圖、展示細(xì)節(jié)的小圖、展示各個屬性的規(guī)格圖等,一個商品甚至可能配有幾十張圖片。圖片需設(shè)置較高的分辨率和色域,會占用較大的網(wǎng)絡(luò)帶寬資源。高并發(fā)的情況將增加服務(wù)器的壓力,嚴(yán)重減慢瀏覽速度,用戶體驗極差,因此必須考慮圖片資源的存儲和加載速度問題?,F(xiàn)在存儲空間價格相當(dāng)?shù)土?,存儲問題可以通過增加存儲空間來解決。圖片加載速度主要通過圖片延遲加載技術(shù)、圖片緩存技術(shù)及CDN網(wǎng)絡(luò)加速技術(shù)來解決。
WEB頁面打開的時候,整個頁面的所有圖片會依次發(fā)送請求加載,可能出現(xiàn)可見區(qū)域圖片在不可見區(qū)域之后發(fā)送加載請求,結(jié)果出現(xiàn)不可見區(qū)域圖片先加載完畢而可見區(qū)域圖片后加載的情況,給用戶造成頁面圖片遲遲打不開的感受。圖片延遲加載原理就是基于JavaScript語言對瀏覽器窗口的滾動事件進(jìn)行處理,只加載顯示區(qū)域的圖片,從而加快頁面圖片的加載速度。
導(dǎo)購網(wǎng)站將圖片通過Apache部署在單獨(dú)的圖片服務(wù)器中并開啟緩存功能。用戶訪問過的圖片資源被緩存到內(nèi)存,其他用戶再次訪問該資源,將直接訪問內(nèi)存中的圖片,避免再次讀取硬盤等較慢的存儲設(shè)備。
目前大型網(wǎng)站均使用CDN網(wǎng)絡(luò)加速技術(shù),這種技術(shù)采取分布式網(wǎng)絡(luò)緩存結(jié)構(gòu),通過DNS負(fù)載均衡技術(shù)在現(xiàn)有的Internet中增加一層新的網(wǎng)絡(luò)架構(gòu),將網(wǎng)站的內(nèi)容發(fā)布到最接近用戶的Cache服務(wù)器內(nèi)。在導(dǎo)購網(wǎng)站建設(shè)初期,因訪問量和商品數(shù)量沒有實現(xiàn)大規(guī)模,可暫緩采用該技術(shù)。但將圖片服務(wù)器單獨(dú)部署,并綁定和WEB服務(wù)不同域名的設(shè)計,為后續(xù)引入CDN網(wǎng)絡(luò)加速預(yù)留下接口
選擇我們,優(yōu)質(zhì)服務(wù),不容錯過
1. 優(yōu)秀的網(wǎng)絡(luò)資源,強(qiáng)大的網(wǎng)站優(yōu)化技術(shù),穩(wěn)定的網(wǎng)站和速度保證
2. 15年上海網(wǎng)站建設(shè)經(jīng)驗,優(yōu)秀的技術(shù)和設(shè)計水平,更放心
3. 全程省心服務(wù),不必?fù)?dān)心自己不懂網(wǎng)絡(luò),更省心。
------------------------------------------------------------
24小時聯(lián)系電話:021-58370032