大型在線商務網站的構架設計


本項目是一個在線商品交易平台,平台的主要目的是讓企業在平台上發布商品及資訊,用戶可以在此平台上購買商品並參與商品的評論。圍繞這一目的,系統需要實現商品管理,商品訂購,多部門訂單處理,商品促銷,內容管理等功能。

 

一、平台技術架構

 

使用EJB是因為當時3G已經出來,如果以后3G普及了,很多用戶可能會通過手機去購物,這時候商城可定要提供兩個終端,一種針對電腦,一種針對手機。

采用EJB的話可以把業務層的功能做成EJB部署到一台機器上面,再分別開發PC機的客戶端和手機的客戶端來遠程調用EJB的業務層。

如果使用SSH架構的話,需要維護多份代碼。

 

二、服務器架構

系統有多類服務器,分別為:數據庫服務器、JBOSS應用服務器(運行EJB程序)、Tomcat服務器(EJB客戶端)、Apache的http服務器(專門用來解析靜態文件,減輕Tomcat壓力)。關於Apache的http服務器與Tomcat的集成,請在網上搜一下。

 

隨着訪問量的增大,需要分別對這三類服務器進行配置集群。在集群環境下,需要加入負載均衡器(可以用硬件來做,也可以用軟件來做,最好是用硬件來做。采用軟件來做的一般是沒錢的公司。)將用戶的請求交給集群環境中的某一台機器來處理。

 

集群下文件的處理方式:1、通過軟件方法,開一個socket,每台機器都傳送一下,這種方式不大保險。2、硬件方法,磁盤陣列。效率很高,有些硬盤可以作為服務硬盤,有些可以作為備份硬盤。可以把數據根據raid方案放在不同的扇區里面,讀取的時候,讀取光頭會同時讀取。訪問硬盤的速度可以成倍提高。

 

多台服務器間Session同步:如果集群環境下服務器不多(一般不超過5台,最好不超過3台。因為讓每個Session都分布在各個服務器上會占用很大性能)可以通過Tomcat來配置集群的Session同步。如果服務器超過5台,最好單獨搞一個Session服務器。

像這種集群方案,IBM這類公司已經提供了一套一系列的硬件方案,不過一套方案要賣個上百萬。有四台WEB服務器,最少能同時支撐三萬多人在線。一天的訪問量就有三十來萬。像當當網,一天也就十八萬。

 

另一種方案是:COOKIE+DB來實現Session的功能,他會把數據存放到數據庫,給用戶寫入個COOKIE,COOKIE存入隨機生成唯一ID,標識用戶身份,卓越網和當當網用的就是這種方案。

 

三、用到的幾個性能優化的技術

OSCatch:緩存

Velocity:頁面靜態化

SSI:包含頁面

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM