1. 程式人生 > >1、專案背景介紹

1、專案背景介紹

電商行業背景介紹

電商行業技術特點

  • 技術新
  • 技術範圍廣
  • 分散式
  • 高併發、叢集、負載均衡、高可用
  • 海量資料
  • 業務複雜
  • 系統安全

電商模式:

  • B2B:商家到商家——阿里巴巴,慧聰網、銘萬網…
  • B2C:商家到使用者——京東…
  • C2C:使用者到使用者——淘寶…
  • B2B2C:商家到商家到使用者——天貓…
  • O2O:線上到線下——百度外賣、美團、餓了麼…

功能列表

專案功能列表

  • 後臺管理系統:管理商品、訂單、類目、商品規格屬性、使用者管理以及內容釋出等功能。
  • 前臺系統:使用者可以在前臺系統中進行註冊、登入、瀏覽商品、首頁、下單等操作。
  • 會員系統:使用者可以在該系統中查詢已下的訂單、收藏的商品、我的優惠券、團購等資訊。
  • 訂單系統:提供下單、查詢訂單、修改訂單狀態、定時處理訂單。
  • 搜尋系統:提供商品的搜尋功能。
  • 單點登入系統:為多個系統之間提供使用者登入憑證以及查詢登入使用者的資訊。

系統架構

傳統架構

傳統架構

1000併發

1000併發

需要20臺伺服器做tomcat叢集。當tomcat叢集中節點數量增加,服務能力先增加後下降。
所以叢集中節點數量不能太多,一般也就 5 個左右。

10000併發

需要按照功能點把系統拆分,拆分成獨立的功能。單獨為某一個節點新增伺服器。需要系統之間配合才能完成整個業務邏輯,叫做分散式

10000併發

分散式架構:多個子系統相互協作才能完成業務流程。系統之間需要進行通訊。

叢集:同一個工程部署到多臺伺服器上。

分散式架構:
把系統按照模組拆分成多個子系統。

優點:

  • 把模組拆分,使用介面通訊,降低模組之間的耦合度。
  • 把專案拆分成若干個子專案,不同的團隊負責不同的子專案。
  • 增加功能時只需要再增加一個子專案,呼叫其他系統的介面就可以。
  • 可以靈活的進行分散式部署。

缺點:

  • 系統之間互動需要使用遠端通訊,介面開發增加工作量。
  • 各個模組有一些通用的業務邏輯無法共用。

基於soa的架構

SOA:Service Oriented Architecture面向服務的架構。
也就是把工程拆分成服務層、表現層兩個工程。

  • 服務層中包含業務邏輯,只需要對外提供服務即可。
  • 表現層只需要處理和頁面的互動,業務邏輯都是呼叫服務層的服務來實現。

!SOA的架構](https://img-blog.csdnimg.cn/20181129174813281.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MjExMjYzNQ==,size_16,color_FFFFFF,t_70)

e3mall系統架構

e3mall系統架構