PetShop項目的淺談

經過對這個項目的分析我覺得有幾點值得我們學習和借鑑
1.petshop的結構
2.petshop的設計模式
3.依賴注入
4.緩存依賴
5.微軟消息隊列MSMQ
6.配置管理,權限驗證《不是很重要》
========================================================================
一:採用MVC的架構模式
 一表示層
 二業務邏輯層
 三數據庫訪問層
 
 二:採用的設計模式
  抽象工廠模式實現對數據層的訪問操作
               實現對緩存依賴的操作
               實現對消息隊列的操作《異步同步插入訂單》
  外觀模式:實現對返回一個緩存依賴的對象,不是訪問層接口
  代理模式:雖然在這個項目中寫到了,但是沒有應用上去,可以先理解
 
  三:依賴注入
    是用來降低耦合度,提高高內聚
    通過反色來動態加載的,需要在web.config中配置
   
 
 四:緩存依賴
     緩存依賴是直接提高網站訪問效率的最直接,最有效的方法,怎樣才能達到既能及時的緩存,有能及時的更新,微軟給我們提高了依賴數據庫的緩存依賴
     SqlCacheDependency類
     首先我們要在數據庫上配置好緩存依賴的數據表,在這裏就不在說的那麼詳細了
     然後再配置文件中<cacheing>字節中配置好數據庫緩存依賴
     在接着頂一個一個緩存依賴的接口,用到緩存依賴集合類型 AggregateCacheDependency
     在定義相應的數據表類實現它,這裏還可加入模板的設計模式我也不一一列出來了
     在用定義個緩存依賴的工廠類來調用接口
     最後定義一個外觀模式在工廠裏調用返回一個依賴對象(對象)
     注意:在前臺頁面調用中把緩存依賴添加到cache緩存中形式如:
      key關鍵字,data我們要的數據,cd緩存依賴的對象
       Cache.Add(key, data, cd, DateTime.Now.AddHours(categoryTimeout), Cache.NoSlidingExpiration, CacheItemPriority.High, null);
 
 五:微軟消息隊列MSMQ
      1. 消息隊列是實現對插入訂單的同步或者異步來操作的,最終是通過多線程來實現對數據庫的插入操作的
      2. 首先頂一個消息隊列接口:實現3中方法 一種接收消息的方法,一種具有等待時間的接收消息的方法, 一種發送消息的方法
       《不過在此之前先要配置好消息隊列》
      3.在定義一個基類來完成初始化消息隊列,初始化消息隊列用到三個參數
         消息隊列事務類型 MessageQueueTransactionType
         消息隊列 MessageQueue
         等待時間 timeout
       4.在定義一個完成消息的操作類既要實現基類,也要實現接口
       5.用工廠調用它
       6.定義一個控制檯應用程序,採用多線程操作最後提交到數據庫
      
 六:配置管理,權限驗證管理這裏就不做說明了
   以上只是一個粗談,具體的,我用word文檔做了詳細的講解和說明

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章