自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

再談設(shè)計(jì)高并發(fā)的電子商店

開發(fā) 架構(gòu)
我想至此,你應(yīng)該明白了(一)中,為什么后臺(tái)應(yīng)用程序直接訪問(wèn)業(yè)務(wù)邏輯層,而商店應(yīng)用程序需要通過(guò)服務(wù)層訪問(wèn)業(yè)務(wù)邏輯層了,因?yàn)榘殡S數(shù)據(jù)訪問(wèn)量增大,我們可以將服務(wù)根據(jù)功能需要,部署在多個(gè)服務(wù)器上,以緩解訪問(wèn)壓力,而后臺(tái)應(yīng)用程序不會(huì)出現(xiàn)訪問(wèn)量增大的現(xiàn)象。

上次我發(fā)布了設(shè)計(jì)高并發(fā)的電子商店初稿,得到大家的很多優(yōu)秀建議和反饋,在此基礎(chǔ)上,我對(duì)設(shè)計(jì)做了調(diào)整,希望大家多多拍磚。

我會(huì)將實(shí)現(xiàn)的全過(guò)程記錄下來(lái),并通過(guò)博客園分享給大家,當(dāng)然最后也會(huì)把這個(gè)電子商店網(wǎng)站免費(fèi)開源。

我們的電子商店都準(zhǔn)備實(shí)現(xiàn)哪些功能模塊呢?

詳細(xì)描述,等我們下一個(gè)章節(jié)再說(shuō)說(shuō)道說(shuō)道...... 

首先從架構(gòu)上考慮,我們采用四層的面向服務(wù)的架構(gòu):

一個(gè)標(biāo)準(zhǔn)的四層架構(gòu)包含如下四個(gè)部分:

  1. 商店應(yīng)用程序展示層,負(fù)責(zé)商店應(yīng)用程序與客戶的交互
  2. 服務(wù)層,負(fù)責(zé)與商店應(yīng)用程序進(jìn)行數(shù)據(jù)交互
  3. 業(yè)務(wù)邏輯層,負(fù)責(zé)處理系統(tǒng)的業(yè)務(wù)
  4. 數(shù)據(jù)訪問(wèn)層,負(fù)責(zé)處理數(shù)據(jù),與不同的數(shù)據(jù)庫(kù)打交道
然后從物理部署上考慮,我們采用分布式部署:

我們的目的就是伴隨著訪問(wèn)量的增加,無(wú)需更改程序,只需增加服務(wù)器個(gè)數(shù),就可以達(dá)到高并發(fā)的目的。

客戶:

客戶從瀏覽器訪問(wèn)我們的商店Web應(yīng)用程序服務(wù)器;

商店web應(yīng)用程序采用Windows_Server_AppFabric技術(shù),緩存部分更改時(shí)效性不高的數(shù)據(jù),和共享sessionstate

同時(shí),手機(jī),winform程序等可以通過(guò)wcf技術(shù),訪問(wèn)通過(guò)分布式服務(wù)的AppFabric服務(wù)器獲取數(shù)據(jù)

將Web應(yīng)用程序的分布式緩存和提供分布式服務(wù)的AppFabric服務(wù)器部署在一起,就是為了最大化的節(jié)省服務(wù)器資源

數(shù)據(jù)庫(kù)采取讀寫分離的原則:

  1. 對(duì)于商品評(píng)論的信息我們放在"從數(shù)據(jù)庫(kù)1"中,在商品詳細(xì)的頁(yè)面,直接從該數(shù)據(jù)庫(kù)獲取數(shù)據(jù)。
  2. 對(duì)于訂單的信息我們放在"從數(shù)據(jù)庫(kù)2"中,在訂單查詢的頁(yè)面,直接從該數(shù)據(jù)庫(kù)獲取數(shù)據(jù)。
  3. "從數(shù)據(jù)庫(kù)1"和"從數(shù)據(jù)庫(kù)2"都會(huì)在合適的時(shí)機(jī)同步到主數(shù)據(jù)庫(kù)。
  4. 我們會(huì)根據(jù)業(yè)務(wù)開發(fā)出不同的服務(wù),而不同的服務(wù)又可以使用更多的從數(shù)據(jù)庫(kù),這樣方便以后的擴(kuò)展。

圖片服務(wù)器采用二級(jí)域名的形式對(duì)外提供圖片共享服務(wù)

后臺(tái)管理人員:

管理人員從瀏覽器訪問(wèn)我們的后臺(tái)應(yīng)用程序服務(wù)器,通過(guò)后臺(tái)應(yīng)用程序管理圖片服務(wù)器(圖片部分)和數(shù)據(jù)庫(kù)服務(wù)器(數(shù)據(jù)部分)的資源。

我想至此,你應(yīng)該明白了(一)中,為什么后臺(tái)應(yīng)用程序直接訪問(wèn)業(yè)務(wù)邏輯層,而商店應(yīng)用程序需要通過(guò)服務(wù)層訪問(wèn)業(yè)務(wù)邏輯層了,因?yàn)榘殡S數(shù)據(jù)訪問(wèn)量增大,我們可以將服務(wù)根據(jù)功能需要,部署在多個(gè)服務(wù)器上,以緩解訪問(wèn)壓力,而后臺(tái)應(yīng)用程序不會(huì)出現(xiàn)訪問(wèn)量增大的現(xiàn)象。

然后從項(xiàng)目組件上考慮,我們創(chuàng)建10個(gè)項(xiàng)目:

App——電子商店前臺(tái)頁(yè)面展示

是BS架構(gòu)的項(xiàng)目,選擇最新的MVC4框架。

BLL——業(yè)務(wù)邏輯

業(yè)務(wù)邏輯的操作,包括業(yè)務(wù)處理,事務(wù)等。

DAL——數(shù)據(jù)訪問(wèn)

數(shù)據(jù)庫(kù)訪問(wèn)的操作,數(shù)據(jù)實(shí)體,數(shù)據(jù)校驗(yàn),使用Entity Framework。

IBLL——業(yè)務(wù)接口

業(yè)務(wù)邏輯層的方法對(duì)外暴露的接口和服務(wù)契約。如:App項(xiàng)目和Shop項(xiàng)目。

Common——公共組件

整個(gè)應(yīng)用程序使用的公共輔助方法。

ModelingProject——模型設(shè)計(jì)

在此設(shè)計(jì)項(xiàng)目的圖例,如:架構(gòu)圖。

WcfHost——服務(wù)宿主

為電子商店前臺(tái)系統(tǒng)的服務(wù)提供宿主,使用微軟WCF技術(shù)。

WFActivitys——工作流活動(dòng)層

定義了工作流的活動(dòng),使用微軟WF技術(shù)。

WFDesigner——工作流設(shè)計(jì)器

實(shí)施人員自由配置工作流的設(shè)計(jì)器,使用微軟WPF技術(shù)。

Shop——電子商店后臺(tái)應(yīng)用程序

是BS架構(gòu)的項(xiàng)目,選擇最新的MVC4框架。使用EasyUI腳本庫(kù)。

選型

工具選擇VS2010 SP1 + SQL Server2008 + 狼奔代碼生成器

技術(shù)選擇EF + WF + WCF + MVC4 + EasyUI

參考資料

Windows_Server_AppFabric

狼奔代碼生成器

 原文鏈接:http://www.cnblogs.com/angben/archive/2012/12/26/2833687.html#2587535

責(zé)任編輯:林師授 來(lái)源: 博客園
相關(guān)推薦

2012-12-27 10:31:43

開發(fā)設(shè)計(jì)架構(gòu)設(shè)計(jì)

2025-02-20 00:01:00

2021-04-28 08:52:22

高并發(fā)架構(gòu)設(shè)高并發(fā)系統(tǒng)

2021-05-24 09:28:41

軟件開發(fā) 技術(shù)

2022-03-31 17:38:09

高并發(fā)系統(tǒng)架構(gòu)設(shè)計(jì)負(fù)載均衡

2024-11-07 09:19:31

2017-11-27 08:50:29

架構(gòu)數(shù)據(jù)存儲(chǔ)

2025-01-20 00:00:03

高并發(fā)秒殺業(yè)務(wù)

2017-12-12 14:51:15

分布式緩存設(shè)計(jì)

2023-09-08 08:10:48

2023-09-08 08:22:30

2011-05-13 15:54:50

C模塊化

2019-06-28 10:55:04

預(yù)熱高并發(fā)并發(fā)高

2018-03-12 09:05:48

高并發(fā)微服務(wù)架構(gòu)

2023-10-31 17:56:02

高并發(fā)設(shè)計(jì)架構(gòu)

2024-05-27 08:32:45

2021-05-14 14:52:59

高并發(fā)TPSQPS

2019-02-12 09:34:00

微博短視頻架構(gòu)

2024-08-29 09:32:36

2023-12-12 09:06:06

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)