javab2b2c開源商城系統原始碼
資料庫設計:
1、關鍵的一個是絕對不能有外來鍵強關聯,我看到類似用hibernate產品的一些公司,全部都是強關聯,那你以後想刪除一些資料,那真是噩夢的,這個還不用說,查詢效能方面影響也是巨大的。
2、分庫分表。這個必須要支援的,做網際網路資料量是非常的巨大的,如果開始就不能支援分庫分表,那麼後期會至少花上千萬去做這事,最好一個例子就是噹噹網,當年很多事單庫的,到現在也沒有實現分庫分表,它們只能使用一些分割槽表架構,分割槽表本身就存在很大問題,比如擴充套件性、資料量過億都是問題!!!!
資料庫選擇:最好還是myslq,1、輕量,2、開源(阿里的alisql就是MySQL改個名字),3、功能能滿足電商需求
搜尋:選擇lucene較好,原因是他封裝的較好,許可權對於電商來說不應該設計的過於複雜,我認為主要就兩張表就夠了,一個是角色Role表,一個是資源Resources表,然後使用者和角色通過中間表關聯下就OK了,角色裡面有資源,很簡單的邏輯,security、shiro這兩款的許可權框架都能做出這個需求。
快取:目前使用Redis,我看到有的公司使用的是memcache,這個10年前,就這樣,功能非常的簡陋不說,主要一個問題是會有死快取,就是快取怎麼也清空不了,這個你想想就知道多悲劇了,商家修改了價格,怎麼也改不了,最後只能關閉機器重啟。還有的公司使用的還是hibernate提供的ehcache,這個大家自行了解即可,關鍵是他做叢集有問題,搞電商不可能是單機的,剛上線至少是2臺伺服器。
靜態化:目前使用velocity的靜態化,可以實現全站60%都是靜態頁面,資料從叢集redis快取中讀取。
服務化:目前使用dubbo,阿里的東西還是經受住很大考驗的,即時老外的東西再好,也沒有這樣的場景去考驗,所以都還是理論階段,這個讓國人蠻自豪的!
圖片伺服器:這個也是非常重要的環節,目前我們測試系統都有5個G的圖片了!!!!線上估計會是以T計算的,覺得是需要獨立的圖片伺服器的。
叢集、負載、分散式:前面的分庫分表、服務化、圖片伺服器都是為叢集、負載、分散式做準備的,叢集需要基於CDN做動態切換,伺服器用Nginx做複雜,業務層用dubbo做分散式服務。
下面整理下整個架構吧:
展示層/控制層:springMVC,在spring中做讀寫分離
持久層:mybatis
資料庫:MySQL/Oracle,支援主從複製、讀寫分離、多機備份、支援分庫分表
快取機制:redis,CDN圖片快取,也是支援熱備份、高併發的
靜態化機制:系統頁面做靜態化,提高訪問速度
圖片伺服器:購買專用伺服器,用nginx做負載
搜尋引擎: 分散式Lucene
伺服器:Linux
中介軟體:tomcat、nginx,還有其他N多的支援叢集部署的安裝間接軟體,就不一一列舉了
圖片伺服器:通過nginx做的,SFTP方式統一上傳
叢集方案:多機tomcat,seesion統一管理,圖片統一管理。這些需要一套解決方案。
伺服器要求:linux/windows,4G記憶體,空間20G以上
架構圖:
最後對於JAVA領域商城的開發,其實在PHP、.NET語言中,已經有非常多的成熟同類產品了,比如shopnc、ecshop等等等,但是PHP的邏輯都是寫在前臺檔案中,這個就跟JAVA中的邏輯都是寫在了JSP中一樣,這樣雖然便於開發,但是後期二次開發、維護都不方便。另外.NET語言大家都是知道的,它是不開源的,這個我覺得不敢用的,哪天你遇到致命bug了,沒法從底層排查,這也是為什麼銀行、金融、電商很多行業不用這個語言原因了。
另外對於JAVA開發方面,其實如果有好的架構,JAVA程式設計師只寫邏輯,前端只寫前端,資料庫DBA只關注DBA,這樣的話,開發起來會非常的方便。我們團隊目前也是花了很長時間,也借鑑了很多成熟的框架,研發了一套適合商城開發的一套架構。等到以後有機會可以開源出來給大家。
網址:www.hulianrongyun.com,有問題可以聯絡本人
相關文章
- TPshop2.0 免費開源商城系統原始碼原始碼
- 跨境商城系統開發原始碼部署原始碼
- 眾籌app商城開發詳細,眾籌app商城系統開發(原始碼部署),眾籌商城系統原始碼功能APP原始碼
- javaB2B2C原始碼springmvcmybatis多租戶電子商城系統-Stream重新入隊(RabbitMQ)Java原始碼SpringMVCMyBatisMQ
- TPshop開源商城系統
- 淨研氏商城系統開發原始碼部署原始碼
- 慧優米商城系統開發原始碼部署原始碼
- 真正開源的商城原始碼推薦原始碼
- 未來世界商城系統開發技術原始碼原始碼
- 商城dapp系統開發技術分析丨商城dapp開發案例及原始碼APP原始碼
- 商城系統原始碼你瞭解多少?原始碼
- 移動商城直播帶貨系統原始碼開源二次開發私有化部署原始碼
- 多商戶商城開發(功能)丨多商戶商城系統開發(開發方案)丨多商戶商城成品原始碼系統原始碼
- 美澳車動力商城系統開發原始碼部署原始碼
- 【全開源】AJAX家政系統原始碼小程式前後端開源原始碼原始碼後端
- DAPP眾籌商城系統開發方案及邏輯丨DAPP眾籌商城系統原始碼模式APP原始碼模式
- NFT商城系統介紹|NFT模式系統原始碼搭建模式原始碼
- DAPP商城開發詳細丨DAPP商城系統開發(方案及規則)丨DAPP商城原始碼部署APP原始碼
- 直播商城原始碼包含哪些技術?商城直播系統開發難點有哪些?原始碼
- 線上客服系統原始碼-開源PHP版(開源im即時通訊原始碼)原始碼PHP
- 咖道眾籌互助商城系統開發技術原始碼原始碼
- 微商城小程式系統原始碼開發搭建前景和公司原始碼
- 鏈動2+1商城系統開發原理(原始碼搭建)原始碼
- Thinkphp開發的積分商城系統原始碼詳情開發示例PHP原始碼
- 裝潢建材行業分銷商城系統開發原始碼行業原始碼
- 多商戶商城系統定製(平臺開發)原始碼案例原始碼
- Wemall外賣版商城系統商城原始碼更新v1.3版原始碼
- 企業級javaspringbootb2bc商城系統開源原始碼二次開發:服務消費(Ribbon)JavaSpring Boot原始碼
- 泰山眾籌商城系統開發(實現方案)丨泰山眾籌商城開發原始碼及功能原始碼
- CRM系統原始碼下載PHP全開源搭建原始碼PHP
- thinkphp開源軟體市場普通版微商城原始碼PHP原始碼
- 短影片軟體系統開發:選擇開源原始碼原始碼
- 基於thinkphp開發的wemall微信商城原始碼系統修復PHP原始碼
- 電商聚合供應鏈商城系統對接開發(成熟原始碼)原始碼
- 微服務java_b2b商城系統_java商城原始碼100%開源適合2次開發-(六)分散式配置中心(Spring Cloud Config)微服務Java原始碼分散式SpringCloud
- 獨立商城系統、原始碼、報價之探究_OctShop原始碼
- php移動智慧商城系統原始碼!實力派!PHP原始碼
- 直播商城系統原始碼,環形進度條元件原始碼元件