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

以文本方式查看主題

-  曙海教育集團論壇  (http://www.xinguifushi.cn/bbs/index.asp)
--  Microsoft.NET Framework  (http://www.xinguifushi.cn/bbs/list.asp?boardid=78)
----  Microsoft.NET PetShop4架構與技術分析  (http://www.xinguifushi.cn/bbs/dispbbs.asp?boardid=78&id=2645)

--  作者:wangxinxin
--  發布時間:2010-12-15 11:21:46
--  Microsoft.NET PetShop4架構與技術分析

1.項目概述與架構分析
微軟剛推出了基于ASP.NET 2.0下的Pet Shop 4, 該版本有了一個全新的用戶界面。是研究ASP.NET 2.0的好范例啊,大家都知道,一直以來,在.NET和Java之間爭論不休,到底使用哪個平臺開發的企業級應用性能最好、結構最優、生產力最高。為了用事實說話,通過對項目各方面的性能評估進而在比較.NET和Java的高下。用戶做比較的這個項目就是Petshop。正因為Petshop肩負著上面所說的重任,各方面必須是最優的,架構設計應該是經過慎重考慮的。所以其一經推出,便成為了開發者、架構師等人學習、研究的典范。

日前微軟推出了基于.NET Framework 2.0開發的Petshop 4。新的Petshop4實現了與Petshop 3相同甚至更多的特性,由于采用了Master Pages,Membership,以及Profile,SqlCacheDependency,但是代碼量卻減少了四分之一。同時,在事務、數據緩存、安全方面使用了.NET 2.0附帶的特性,構建了一個靈活的最佳實踐的應用程序。


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

1.用System.Transactions代替了原來的Serviced Components提供的事務功能

代碼實現:PetShop.BLL.OrderSynchronous 的 public void Insert(PetShop.Model.OrderInfo order)。

2.用強類型的范型集合代替了原來的弱類型集合

        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來做認證和授權

4.創建了針對Oracle 10g的Custom  ASP.NET 2.0 Membership Provider

5.利用ASP.NET 2.0的Custom Oracle 和 SQL Server Profile Providers 做用戶狀態管理,包括購物車等

6.采用了Master Pages,取代了原來的用戶控件,來實現統一的界面效果

7.使用了ASP.NET 2.0 Wizard控件實現check-out

8.使用了SqlCacheDependency來實現數據庫層次的緩存更新(cache invalidation)功能

9.使用了消息隊列來實現異時訂單處理。

 

2.整體架構:


數據庫:(暫略)

項目列表:從整體可以看出,Pet Shop 4的項目體系已經很龐大,考慮的方面也較3.0更全面復雜。


序號

項目名稱

描述

1

BLL

業務邏輯層

2

CacheDependencyFactory

緩存依賴類的工廠類

3

WEB

表示層

4

DALFactory

數據層的抽象工廠

5

DBUtility

數據訪問類組件

6

IBLLStrategy

同步/異步策略接口

7

ICacheDependency

緩存依賴類接口

8

IDAL

數據訪問層接口定義

9

IMessaging

異時處理消息隊列接口定義

10

IProfileDAL

Profile的數據訪問層接口定義

11

Membership

Membership認證和授權管理

12

MessagingFactory

異時處理消息隊列的抽象工廠

13

Model

業務實體

14

MSMQMessaging

異時處理消息隊列的實現

15

OracleDAL

Oracle數據訪問層

16

OracleProfileDAL

Oracle的Profile Providers

做用戶狀態管理,包括購物車等

17

OrderProcessor

后臺處理進程,處理訂單隊列

18

Profile

Profile的數據訪問層

19

ProfileDALFactory

ProfileDAL的工廠類(反射創建ProfileDAL)

20

SQLProfileDAL

SQL Server 的Profile Providers

做用戶狀態管理,包括購物車等

21

SQLServerDAL

SQLServer數據訪問層

22

TableCacheDependency

緩存依賴實現類


項目分解

由于整體已經有22個項目,所以,對于初學者一看就暈了,所以,我做了分解,可以大體上分幾塊去理解。

序號

項目名稱

描述

1

WEB

表示層

2

Model

業務實體

3

BLL

業務邏輯層

4

DALFactory

數據層的抽象工廠

5

IDAL

數據訪問層接口定義

6

SQLServerDAL

SQLServer數據訪問層

7

OracleDAL

Oracle數據訪問層

8

DBUtility

數據庫訪問組件基礎類

9

CacheDependencyFactory

緩存依賴類的工廠類

10

ICacheDependency

緩存依賴類接口

11

TableCacheDependency

緩存依賴實現類

12

IBLLStrategy

同步/異步處理策略接口(實現在bll根據配置反射選擇)

13

MessagingFactory

異時處理消息隊列的抽象工廠

14

IMessaging

異時處理消息隊列接口定義

15

MSMQMessaging

異時處理消息隊列的實現

16

Profile

Profile的數據訪問層

17

ProfileDALFactory

ProfileDAL的工廠類(反射創建ProfileDAL)

18

IProfileDAL

Profile的數據訪問層接口定義

19

OracleProfileDAL

Oracle的Profile Providers

做用戶狀態管理

20

SQLProfileDAL

SQL Server 的Profile Providers

做用戶狀態管理

21

Membership

Membership認證和授權管理

22

OrderProcessor

后臺處理進程,處理訂單隊列

 



3.Petshop 4中的設計模式

工廠模式:

首當其沖的就是工廠模式,很容易就可以看出來,也是應用最多的。

DALFactory:數據訪問層的抽象工廠(決定創建哪種數據庫類型的數據訪問層。可以選擇:SQLServer,Oracle)

CacheDependencyFactory:緩存依賴類的工廠類。(創建具體表的緩存依賴)

MessagingFactory :異時處理消息隊列的抽象工廠(反射創建具體的異時處理類)

ProfileDALFactory:ProfileDAL的工廠類(反射選擇創建Oracle 和SQL Server的 ProfileDAL)


主站蜘蛛池模板: 久久精品国产亚洲7777小说 | 成人在线播放 | 国产视频高清在线观看 | 国产精品一 | 亚洲一区不卡 | 大片国产片日本观看免费视频 | 美女性视频网站 | 国产成人免费视频精品一区二区 | 精品国产爱久久 | 久久久国产精品视频 | 免费视频18 | 免费永久国产在线视频 | 毛片免费永久不卡视频观看 | 国产精品特级毛片一区二区三区 | 亚洲欧美另类日本久久影院 | 日韩中文字幕精品久久 | 自拍视频在线观看视频精品 | 精品中文字幕久久久久久 | 综合中文字幕 | 欧美一级影院 | 久久精品免视着国产成人 | 在线观看日韩 | 精品国产香蕉在线播出 | a毛片a毛片a视频 | 欧美日韩亚洲一区二区三区在线观看 | 在线观看香蕉免费啪在线观看 | 国产欧美一区二区另类精品 | 欧美手机视频 | 午夜在线精品不卡国产 | 午夜三级在线 | 一级女性生活片 | 伊人一级 | 久久久一区二区三区不卡 | 欧美巨大精品欧美一区二区 | 国产精品高清全国免费观看 | 草草视频免费观看 | 成年性午夜免费视频网站不卡 | 欧美14videosex性欧美成人 | 中国人免费观看高清在线观看二区 | 又粗又爽又色男女乱淫播放男女 | 欧美一区二区三区精品国产 |