8.電子商務網站最常見的就是商品的打折方式和積分的贈送。這裏怎麽設計他們(工廠模式)?= = =購買成熟的規則引擎。
9.如果同時發出大量訂單,如何保證訂單的有效提交?
= = MQ壹般用於電商,IBM MQ被推薦;妳也可以用MSMQ
第壹點就是數據庫要設計好,在什麽層次上,妳可能需要考慮哪些表需要拆分,哪些核心數據需要冗余。如果是mysql,還要考慮其他問題,比如存儲引擎。
新聞肯定是生成純靜態頁面,對數據庫壓力小很多,但是靜態頁面也不方便管理,更新、刪除、添加都要操作磁盤文件。
要定制緩存層並控制緩存邏輯,可以使用第三方緩存模塊。如果妳使用。net,可以逐層緩存,頁面緩存和數據緩存(memcache,但在win下效率很低)。
電子商務網站的特點是事務嚴格,需要數據庫設計時性能高,還需要合適的索引,支持高並發。他們經常檢查產品表、用戶表等等的索引,是否有很多索引掃描和表掃描(即使是本地的,也要盡量少)。
Mssql語句應該將with(nolock)附加到不需要事務的查詢,以便於並發更新。
有些功能模塊是不能用自然的方式開發的,比如產品訪問量。這些頻繁更新的字段不能放在核心表中。明確的辦法就是把它們分開,字段壹定不能頻繁設計成bool類型,這樣會給以後的擴展留有余地。即使是男女,也推薦小體型。
另壹個是產品設計要充分考慮seo,網站的目錄結構清晰易讀,而不是攜帶壹串查詢參數。
要對安全性有壹個整體的把握,最好使用所有的存儲過程,在項目上線之前導出所有的數據庫存儲過程,然後尋找看起來像exec的語句,看是否需要用sp_executesql替換。
另外,如果采用mssql,可以直接使用mssql fte進行全文搜索,速度和準確率還是可以接受的。最重要的是維護、管理和開發簡單。
折扣可以根據電信的壹級和二級定價功能來處理,如果妳做過電信系統的話。
當然也可以設計的更簡單。建議用CDN加速靜態頁面,解決網通和電信之間的訪問速度問題。
建議在數據緩存中考慮memcache,在。net可以分別用於表示層和數據層。
簡單sql可以不用存儲過程執行,會占用數據庫服務器的處理時間,造成死鎖;
Mvc建議應用壹些CMS項目,電子商城不是很適合。可以在網址上做轉義,使網址顯示更加友好;
數據庫:建議建立分布式數據庫,可以轉移查詢,給數據庫帶來壓力。
圖片可以考慮放在單獨的服務器上;1.三層架構
2.使用手寫sql,手寫實體(生成也可以)和緩存反射綁定(不是緩存數據,緩存映射關系),要考慮網站的長遠發展或者手寫欄的靈活表現。
3.不存在這個問題,只是商業驅動,純購物,不搞什麽圈子,wiki。
4.純粹。不推薦使用net mvc。webform不搞viewstate,不搞服務器端控件(repeater除外)加上壹些mvc的思路就夠了。
5.不需要緩存數據(搜索產品部分除外),但是要考慮程序從多臺服務器快速部署,會有很多配置文件,配置要序列化緩存。
6.當然,王先生已經完成了。參考jd,每張圖片根據業務對應幾個不同的尺寸。
7.根據經驗,電商網站只做到中英文雙語是不靠譜的(文化用戶習慣不是簡單的語言切換)。要想真正操作英語,必須重新開發壹個版本。
8.沒有模式。
9.負載平衡(web,db)+ssb異步處理數據。
10.您是業務類型日誌還是例外日誌?前臺訂單流程中的異常日誌是不必要的。隨便找個工具錄個腳本,壹直運行,保證妳隨時發現什麽問題都能發郵件。
11.找壹個類似endeca的第三方搜索組件。
12.負載平衡非常簡單。剛開始的時候,可以用軟件來完成。所有圖片都放在第三方的cdn上,前臺網站很少使用ajax。如果使用,jquery 1會發現壹個電子商務網站用戶99.5%的行為。
2.對於商品檢索的部分,可以不用數據庫(有很多相關的開源平臺比如在線分詞)。
3,分布式緩存(Memcached,Volecity),個人測試volecity 3還是不錯的。
4、系統設計必須考慮可操作性。從這個角度設計系統。
5.由於電子商務網站變化頻繁,我們必須考慮架構設計如何適應頻繁的版本更新。
6.必須設計壹個好的單點登錄系統。
7.建議不需要sqlserver。
8.對於大型電商網站來說,系統的I/O才是決定性因素,而不是CPU和內存。1.項目劃分會不會有問題?圖中分別有實體層、數據訪問接口層、數據訪問接口層、業務邏輯接口層、業務邏輯和網站A、B、C。
項目劃分不重要,重要的是妳在寫代碼的時候能不能合理的把代碼劃分到相應的項目裏。
2.是開發效率的數據訪問層(NBear,Linq,Nh等。)或者訪問效率(直接使用sql等。)?能不能先用開發效率高的,等以後訪問量大了再重寫替換數據訪問層?
優先考慮開發效率。經過大量的走訪,我相信有錢投資硬件。在妳的程序不是很差的情況下,升級硬件遠比優化程序劃算。
3.該網站已被切割成幾個子網站,壹些控件(如頁眉,頁腳)是共享的。如何在網站項目之間共享這些控件?
然後使其成為自定義控件。
4.4.ms的mvc 1.0早就出了。在項目中使用是否足夠成熟?還是網站後臺用webform,前臺用mvc?
前臺推薦使用webform和mvc。對於前臺來說,mvc可以更好的提升性能,更方便的改變頁面表現形式。後臺界面相對穩定,使用webform可以提高開發效率。
5.是開發哈希表什麽的來維護網站數據的緩存,還是用Memcached?
建議壹開始用hashtable,因為簡單,以後會升級到Memcached。
6.縮略圖處理,我覺得有的網站上傳圖片時直接生成,有的是自己的資源文件實現,當前語言保存在cookie裏。
8.電子商務網站最常見的就是商品的打折方式和積分的贈送。這裏怎麽設計他們(工廠模式)?
規則引擎
9.如果同時發出大量訂單,如何保證訂單的有效提交?
使用MQ隊列
10.log4net?
Log4net只能記錄程序運行日誌,主要用於調試程序。妳必須建立壹個表來保存系統業務操作日誌。
11.電子商務的全文檢索也是壹個讓人頭疼的問題。
Lucene,微軟索引服務,sqlserver全文檢索,很多方案。
12.負載均衡有什麽好的文章推薦代碼嗎?
可以閱讀文章1關於windows 2003中的集群。項目劃分有問題嗎?圖分別是實體層、數據訪問接口層、數據訪問層、業務邏輯接口層、業務邏輯、網站A、B、C。
目前我也是這樣劃分的,但是修改數據表結構的時候會帶動其他層的級聯修改,很不方便,所以開發之前最好把數據庫設計好。另外,當網站分成多個站點時,其他項目生成的DLL文件都要部署到各個網站的bin文件夾中,每次更新都要重新部署。這個也挺煩的。當然可以將DLL部署到GAC來解決這個問題,但是不方便在本地調試,因為壹旦項目發生變化,生成的DLL就要重新復制到GAC才能看到效果。
2.是開發效率的數據訪問層(NBear,Linq,Nh等。)或者訪問效率(直接使用sql等。)?能不能先用開發效率高的,等以後訪問量大了再重寫替換數據訪問層?
我也在考慮這個問題,目前我還沒有采用ORM框架,直接在DAL中訪問DB。
3.該網站已被切割成幾個子網站,壹些控件(如頁眉,頁腳)是共享的。如何在網站項目之間共享這些控件?
自定義控件。
4.4.ms的mvc 1.0早就出了。在項目中使用是否足夠成熟?還是網站後臺用webform,前臺用mvc?
我在學這首曲子。
5.是開發哈希表什麽的來維護網站數據的緩存,還是用Memcached?
現在我使用更多的數據緩存。網。
6.縮略圖處理,我覺得有些網站是上傳圖片時直接生成的,有些是在?
目前自己寫代碼,存放在庫中。
11.電子商務的全文檢索也是壹個讓人頭疼的問題。
使用lucene.net分詞建立索引,然後直接從索引數據庫中搜索,既快速又準確。
12.負載均衡有什麽好的文章推薦代碼嗎?
我不知道。這樣的設計絕對不可能達到新蛋的效果。新蛋至少有上百臺服務器,不同數據庫之間有上千個發布和訂閱鏈接。有復雜的緩存和負載平衡機制。新蛋的所有通訊都基於WCF。另外,對於這麽大的網站,數據庫從來不會停,所以讀寫分開也很重要,因為妳不能為了備份而停數據庫。畢竟,做壹個新蛋這樣的大型電商網站,似乎遠遠不夠。
但是,關於公共的頁眉頁腳,我不建議把它做成自定義控件。這樣維護不方便,稍有改動就釋放dll,很麻煩。
如果妳的頁眉頁腳不是很大,建議用js+css。再加上壓縮和cdn緩存,效率上應該可以接受。