久久中文视频-久久中文网-久久中文亚洲国产-久久中文字幕久久久久-亚洲狠狠成人综合网-亚洲狠狠婷婷综合久久久久


曙海教育集團(tuán)論壇開(kāi)發(fā)語(yǔ)言培訓(xùn)專(zhuān)區(qū)Microsoft.NET Framework → Microsoft.NET PetShop4架構(gòu)與技術(shù)分析


  共有7974人關(guān)注過(guò)本帖樹(shù)形打印

主題:Microsoft.NET PetShop4架構(gòu)與技術(shù)分析

美女呀,離線,留言給我吧!
wangxinxin
  1樓 個(gè)性首頁(yè) | 博客 | 信息 | 搜索 | 郵箱 | 主頁(yè) | UC


加好友 發(fā)短信
等級(jí):青蜂俠 帖子:1393 積分:14038 威望:0 精華:0 注冊(cè):2010-11-12 11:08:23
Microsoft.NET PetShop4架構(gòu)與技術(shù)分析  發(fā)帖心情 Post By:2010-12-15 11:21:46

1.項(xiàng)目概述與架構(gòu)分析
微軟剛推出了基于ASP.NET 2.0下的Pet Shop 4, 該版本有了一個(gè)全新的用戶界面。是研究ASP.NET 2.0的好范例啊,大家都知道,一直以來(lái),在.NET和Java之間爭(zhēng)論不休,到底使用哪個(gè)平臺(tái)開(kāi)發(fā)的企業(yè)級(jí)應(yīng)用性能最好、結(jié)構(gòu)最優(yōu)、生產(chǎn)力最高。為了用事實(shí)說(shuō)話,通過(guò)對(duì)項(xiàng)目各方面的性能評(píng)估進(jìn)而在比較.NET和Java的高下。用戶做比較的這個(gè)項(xiàng)目就是Petshop。正因?yàn)镻etshop肩負(fù)著上面所說(shuō)的重任,各方面必須是最優(yōu)的,架構(gòu)設(shè)計(jì)應(yīng)該是經(jīng)過(guò)慎重考慮的。所以其一經(jīng)推出,便成為了開(kāi)發(fā)者、架構(gòu)師等人學(xué)習(xí)、研究的典范。

日前微軟推出了基于.NET Framework 2.0開(kāi)發(fā)的Petshop 4。新的Petshop4實(shí)現(xiàn)了與Petshop 3相同甚至更多的特性,由于采用了Master Pages,Membership,以及Profile,SqlCacheDependency,但是代碼量卻減少了四分之一。同時(shí),在事務(wù)、數(shù)據(jù)緩存、安全方面使用了.NET 2.0附帶的特性,構(gòu)建了一個(gè)靈活的最佳實(shí)踐的應(yīng)用程序。


他們利用了Project Conversion Wizard把項(xiàng)目從ASP.NET 1.1移植到了ASP.NET 2.0,然后做了以下改動(dòng):

1.用System.Transactions代替了原來(lái)的Serviced Components提供的事務(wù)功能

代碼實(shí)現(xiàn):PetShop.BLL.OrderSynchronous 的 public void Insert(PetShop.Model.OrderInfo order)。

2.用強(qiáng)類(lèi)型的范型集合代替了原來(lái)的弱類(lèi)型集合

        public IList<ProductInfo> GetProductsByCategory(string category)

        {

            // Return new if the string is empty

            if (string.IsNullOrEmpty(category))

                return new List<ProductInfo>();

 

            // Run a search against the data store

            return dal.GetProductsByCategory(category);

        }

3.采用ASP.NET 2.0 Membership來(lái)做認(rèn)證和授權(quán)

4.創(chuàng)建了針對(duì)Oracle 10g的Custom  ASP.NET 2.0 Membership Provider

5.利用ASP.NET 2.0的Custom Oracle 和 SQL Server Profile Providers 做用戶狀態(tài)管理,包括購(gòu)物車(chē)等

6.采用了Master Pages,取代了原來(lái)的用戶控件,來(lái)實(shí)現(xiàn)統(tǒng)一的界面效果

7.使用了ASP.NET 2.0 Wizard控件實(shí)現(xiàn)check-out

8.使用了SqlCacheDependency來(lái)實(shí)現(xiàn)數(shù)據(jù)庫(kù)層次的緩存更新(cache invalidation)功能

9.使用了消息隊(duì)列來(lái)實(shí)現(xiàn)異時(shí)訂單處理。

 

2.整體架構(gòu):


數(shù)據(jù)庫(kù):(暫略)

項(xiàng)目列表:從整體可以看出,Pet Shop 4的項(xiàng)目體系已經(jīng)很龐大,考慮的方面也較3.0更全面復(fù)雜。


序號(hào)

項(xiàng)目名稱(chēng)

描述

1

BLL

業(yè)務(wù)邏輯層

2

CacheDependencyFactory

緩存依賴類(lèi)的工廠類(lèi)

3

WEB

表示層

4

DALFactory

數(shù)據(jù)層的抽象工廠

5

DBUtility

數(shù)據(jù)訪問(wèn)類(lèi)組件

6

IBLLStrategy

同步/異步策略接口

7

ICacheDependency

緩存依賴類(lèi)接口

8

IDAL

數(shù)據(jù)訪問(wèn)層接口定義

9

IMessaging

異時(shí)處理消息隊(duì)列接口定義

10

IProfileDAL

Profile的數(shù)據(jù)訪問(wèn)層接口定義

11

Membership

Membership認(rèn)證和授權(quán)管理

12

MessagingFactory

異時(shí)處理消息隊(duì)列的抽象工廠

13

Model

業(yè)務(wù)實(shí)體

14

MSMQMessaging

異時(shí)處理消息隊(duì)列的實(shí)現(xiàn)

15

OracleDAL

Oracle數(shù)據(jù)訪問(wèn)層

16

OracleProfileDAL

Oracle的Profile Providers

做用戶狀態(tài)管理,包括購(gòu)物車(chē)等

17

OrderProcessor

后臺(tái)處理進(jìn)程,處理訂單隊(duì)列

18

Profile

Profile的數(shù)據(jù)訪問(wèn)層

19

ProfileDALFactory

ProfileDAL的工廠類(lèi)(反射創(chuàng)建ProfileDAL)

20

SQLProfileDAL

SQL Server 的Profile Providers

做用戶狀態(tài)管理,包括購(gòu)物車(chē)等

21

SQLServerDAL

SQLServer數(shù)據(jù)訪問(wèn)層

22

TableCacheDependency

緩存依賴實(shí)現(xiàn)類(lèi)


項(xiàng)目分解

由于整體已經(jīng)有22個(gè)項(xiàng)目,所以,對(duì)于初學(xué)者一看就暈了,所以,我做了分解,可以大體上分幾塊去理解。

序號(hào)

項(xiàng)目名稱(chēng)

描述

1

WEB

表示層

2

Model

業(yè)務(wù)實(shí)體

3

BLL

業(yè)務(wù)邏輯層

4

DALFactory

數(shù)據(jù)層的抽象工廠

5

IDAL

數(shù)據(jù)訪問(wèn)層接口定義

6

SQLServerDAL

SQLServer數(shù)據(jù)訪問(wèn)層

7

OracleDAL

Oracle數(shù)據(jù)訪問(wèn)層

8

DBUtility

數(shù)據(jù)庫(kù)訪問(wèn)組件基礎(chǔ)類(lèi)

9

CacheDependencyFactory

緩存依賴類(lèi)的工廠類(lèi)

10

ICacheDependency

緩存依賴類(lèi)接口

11

TableCacheDependency

緩存依賴實(shí)現(xiàn)類(lèi)

12

IBLLStrategy

同步/異步處理策略接口(實(shí)現(xiàn)在bll根據(jù)配置反射選擇)

13

MessagingFactory

異時(shí)處理消息隊(duì)列的抽象工廠

14

IMessaging

異時(shí)處理消息隊(duì)列接口定義

15

MSMQMessaging

異時(shí)處理消息隊(duì)列的實(shí)現(xiàn)

16

Profile

Profile的數(shù)據(jù)訪問(wèn)層

17

ProfileDALFactory

ProfileDAL的工廠類(lèi)(反射創(chuàng)建ProfileDAL)

18

IProfileDAL

Profile的數(shù)據(jù)訪問(wèn)層接口定義

19

OracleProfileDAL

Oracle的Profile Providers

做用戶狀態(tài)管理

20

SQLProfileDAL

SQL Server 的Profile Providers

做用戶狀態(tài)管理

21

Membership

Membership認(rèn)證和授權(quán)管理

22

OrderProcessor

后臺(tái)處理進(jìn)程,處理訂單隊(duì)列

 



3.Petshop 4中的設(shè)計(jì)模式

工廠模式:

首當(dāng)其沖的就是工廠模式,很容易就可以看出來(lái),也是應(yīng)用最多的。

DALFactory:數(shù)據(jù)訪問(wèn)層的抽象工廠(決定創(chuàng)建哪種數(shù)據(jù)庫(kù)類(lèi)型的數(shù)據(jù)訪問(wèn)層。可以選擇:SQLServer,Oracle)

CacheDependencyFactory:緩存依賴類(lèi)的工廠類(lèi)。(創(chuàng)建具體表的緩存依賴)

MessagingFactory :異時(shí)處理消息隊(duì)列的抽象工廠(反射創(chuàng)建具體的異時(shí)處理類(lèi))

ProfileDALFactory:ProfileDAL的工廠類(lèi)(反射選擇創(chuàng)建Oracle 和SQL Server的 ProfileDAL)


支持(0中立(0反對(duì)(0單帖管理 | 引用 | 回復(fù) 回到頂部

返回版面帖子列表

Microsoft.NET PetShop4架構(gòu)與技術(shù)分析








簽名
主站蜘蛛池模板: 9191久久久久视频 | 清纯唯美综合网 | 韩国美女爽快毛片免费 | 国产高清在线精品二区一 | 久草视屏 | 天天se天天cao综合网蜜芽 | 亚洲日本va午夜中文字幕一区 | 国产亚洲综合在线 | 国产亚洲精品一区二区在线播放 | 国产亚洲精品aaa大片 | 亚洲国产精品专区 | a毛片在线看片免费 | 国产经典一区 | 国产激情一区二区三区成人91 | 欧美日本一区二区三区 | h网站国产 | 国产网址在线 | 一级毛片a免费播放王色 | 亚洲 自拍 欧美 综合 | 精品国产欧美另类一区 | 亚洲精品影院久久久久久 | 国产精品观看在线亚洲人成网 | 久久国产精品最新一区 | 亚洲视频在线播放 | 亚洲激情欧美 | 在线精品免费观看综合 | 高清国产美女一级a毛片录 高清国产亚洲va精品 | 91成人午夜在线精品 | 美女一级片视频 | 一品道一本香蕉视频 | 亚在线| 国产嫩草影院在线观看 | 自拍一区在线观看 | 韩国一级特黄清高免费大片 | 国产亚洲一级精品久久 | 大陆孕妇孕交视频自拍 | 天堂8资源8在线 | 亚洲精品国产免费 | 欧美人与鲁交大毛片免费 | 国产孕妇孕交大片孕 | 久久怡红院亚欧成人影院 |