青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

C++ Programmer's Cookbook

{C++ 基礎} {C++ 高級} {C#界面,C++核心算法} {設計模式} {C#基礎}

WCF,Net remoting,Web service概念

今天看到WCF,說是整合了Net remoting,Web service。。。下面列一下概念。

一 WCF
概括地說,WCF具有如下的優勢:
    1、統一性
    前面已經敘述,WCF是對于ASMX,.Net Remoting,Enterprise Service,WSE,MSMQ等技術的整合。由于WCF完全是由托管代碼編寫,因此開發WCF的應用程序與開發其它的.Net應用程序沒有太大的區別,我們仍然可以像創建面向對象的應用程序那樣,利用WCF來創建面向服務的應用程序。
    2、互操作性
    由于WCF最基本的通信機制是SOAP,這就保證了系統之間的互操作性,即使是運行不同的上下文中。這種通信可以是基于.Net到.Net間的通信。

    可以跨進程、跨機器甚至于跨平臺的通信,只要支持標準的Web Service,例如J2EE應用服務器(如WebSphere,WebLogic)。應用程序可以運行在Windows操作系統下,也可以運行在其他的操作系統,如Sun Solaris,HP Unix,Linux等等。

    3、安全與可信賴
WS-Security,WS-Trust和WS-SecureConversation均被添加到SOAP消息中,以用于用戶認證,數據完整性驗證,數據隱私等多種安全因素。
在SOAP的header中增加了WS-ReliableMessaging允許可信賴的端對端通信。而建立在WS-Coordination和WS-AtomicTransaction之上的基于SOAP格式交換的信息,則支持兩階段的事務提交(two-phase commit transactions)。
    上述的多種WS-Policy在WCF中都給與了支持。對于Messaging而言,SOAP是Web Service的基本協議,它包含了消息頭(header)和消息體(body)。在消息頭中,定義了WS-Addressing用于定位SOAP消息的地址信息,同時還包含了MTOM(消息傳輸優化機制,Message Transmission Optimization Mechanism)。

    4、兼容性
    WCF充分的考慮到了與舊有系統的兼容性。安裝WCF并不會影響原有的技術如ASMX和.Net Remoting。即使對于WCF和ASMX而言,雖然兩者都使用了SOAP,但基于WCF開發的應用程序,仍然可以直接與ASMX進行交互。

 

二 WebService的運行機理

首先客戶端從服務器的到WebService的WSDL,同時在客戶端聲稱一個代理類(Proxy Class), 這個代理類負責與WebService服務器進行Request 和Response, 當一個數據(XML格式的)被封裝成SOAP格式的數據流發送到服務器端的時候,就會生成一個進程對象并且把接收到這個Request的SOAP包進行解析,然后對事物進行處理,處理結束以后再對這個計算結果進行SOAP包裝,然后把這個包作為一個Response發送給客戶端的代理類(Proxy Class),同樣地,這個代理類也對這個SOAP包進行解析處理,繼而進行后續操作。

三 .net Remoting

是在DCOM等基礎上發展起來的一種技術,它的主要目的是實現跨平臺、跨語言、穿透企業防火墻,這也是他的基本特點,與WebService有所不同的是,它支持HTTP以及TCP信道,而且它不僅能傳輸XML格式的SOAP包,也可以傳輸傳統意義上的二進制流,這使得它變得效率更高也更加靈活。而且它不依賴于IIS,用戶可以自己開發(Development)并部署(Dispose)自己喜歡的宿主服務器,所以從這些方面上來講WebService其實上是.netemoting的一種特例。

區別:

1、Remoting可以靈活的定義其所基于的協議,比如http,tcp等,如果定義為HTTP,則與Web Service相同,但是webservice是無狀態的,使用remoting一般都喜歡定義為TCP,這樣比Web Service稍為高效一些,而且是有狀態的。

2、Remoting不是標準,而Web Service是標準。

3、Remoting一般需要通過一個WinForm或是Windows服務進行啟動,也可以使用iis部署,而Web Service則必須在IIS進行啟動。

4、在VS.net開發環境中,專門對Web Service的調用進行了封裝,用起來比Remoting方便。

5 net remoting只能應用于MS 的.net framework之下,需要客戶端必須安裝framework,但是WebService是平臺獨立的,跨語言(只要能支持XML的語言都可以) 以及穿透企業防火墻。


來自MSDN:http://www.microsoft.com/china/MSDN/library/enterprisedevelopment/builddistapp/ASP.NETWebServicesor.NETRemoting-HowtoChoose.mspx?mfr=true

分布式應用程序設計:ASP.NET Web 服務和 .NET Remoting

ASP.NET Web 服務偏向于 XML Schema 類型系統,提供具有廣泛使用范圍的跨平臺支持的簡單編程模型。.NET Remoting 偏向于運行時類型系統,提供較為復雜而且使用范圍小得多的編程模型。這種本質上的差別是決定使用哪種技術的主要因素。但是,還要考慮很多其他設計因素,包括傳輸協議、主機進程、安全性、性能、狀態管理以及對事務的支持等。

傳輸協議和主機進程

盡管 SOAP 規范并不要求用 HTTP 作為傳輸協議,但是客戶端只能通過 HTTP 訪問使用 ASP.NET Web 服務實現的 Web 服務,因為它是 ASP.NET 支持的唯一一種傳輸協議。服務是通過 IIS 調用的,并在 ASP.NET 的輔助進程 aspnet_wp.exe 中執行。

.NET Remoting 使您能夠在任何類型的應用程序(包括 Windows 窗體、托管的 Windows 服務、控制臺應用程序或 ASP.NET 輔助進程)中靈活地托管遠程對象。正如前面所述,.NET Remoting 提供兩個傳輸信道——TCP 和 HTTP。這兩個信道都能使用套接字提供任意發送和接收進程之間的通信。

它還能將 HTTP 信道與 IIS 和 ASP.NET 輔助進程集成。這一點很重要,原因有以下幾點。首先,它是當客戶端請求到達時自動啟動 .NET Remoting 端點的唯一方法。.NET Remoting 管線不包括啟動遠程服務器所需的 DCOM 類型的服務控制管理器 (SCM)。如果從任意進程中提供遠程對象,則需要確保那些進程正在運行。還必須確保它們是線程安全的,例如,線程 A 不能在線程 B 開始關閉進程之后激活對象。如果從 ASP.NET 提供遠程對象,則可以利用 Aspnet_wp.exe 輔助進程,這樣既可自動啟動又具有線程安全的優勢。第二,與 IIS 集成是確保跨進程 .NET Remoting 調用的唯一途徑,如下一節所述。

ASP.NET Web 服務和 .NET Remoting 基礎結構都是可擴展的。您可以過濾入站和出站消息,從多方面控制類型封送和元數據的生成。使用 .NET Remoting,還能實現您自己的格式化程序和信道。

安全性

由于 ASP.NET Web 服務依賴于 HTTP,因此它們與標準的 Internet 安全性基礎結構相集成。ASP.NET 利用 IIS 的安全性功能,為標準 HTTP 驗證方案(包括基本、簡要、數字證書,甚至 Microsoft? .NET Passport)提供了強有力的支持。(還可以使用 Windows 集成驗證,但只能用于信任域中的客戶端。)使用可用的 HTTP 驗證方案的一個優勢在于,無需在 Web 服務中更改代碼,IIS 是在 ASP.NET Web 服務被調用之前執行驗證的。ASP.NET 還支持基于 .NET Passport 的驗證和其他自定義的驗證方案。ASP.NET 支持基于目標 URL 的訪問控制,并通過與 .NET 代碼訪問安全性 (CAS) 基礎結構的集成支持訪問控制。SSL 可用于確保通信的安全。

盡管這些標準傳輸技術對于確保 Web 服務相當有效,但它們只能做到這種程度。在涉及到不同信任域中多個 Web 服務的復雜情況下,還得建立自定義的特殊解決方案。Microsoft 和其他公司正致力于創建一套安全性規范,該規范將基于 SOAP 消息的可擴展性提供消息級別的安全性功能。這些規范之一是 XML Web 服務安全性語言(WS-Security),它為消息級別的憑據傳輸、消息完整性和消息保密定義了框架。

正如上一節所述,一般情況下,.NET Remoting 管線不能確保跨進程調用的安全。使用 ASP.NET 托管于 IIS 中的 .NET Remoting 端點可以利用 ASP.NET Web 服務可用的所有安全性功能,包括對使用 SSL 確保有線通信的安全性的支持。如果您正在使用托管在進程中的 TCP 信道或 HTTP 信道(而不是 aspnet_wp.exe),則必須自己執行身份驗證、授權和保密機制。

另一個要關注的安全性問題是,在不必更改默認安全性策略的情況下,從不完全信任的環境中執行代碼的能力。ASP.NET Web 服務客戶端代理可以在這些環境中工作,但 .NET Remoting 代理則不能。要從不完全信任的環境中使用 .NET Remoting 代理,需要特殊的序列化權限。默認情況下,該權限不會授予從 Intranet 或 Internet 上下載的代碼。如果要在不完全信任的環境中使用 .NET Remoting 客戶端,則需要更改從那些區域中加載的代碼的默認安全性策略。當您從運行于沙箱(如下載的 Windows 窗體應用程序)中的客戶端連接到系統時,ASP.NET Web 服務是較簡單的選擇,因為不需要更改安全性策略。

狀態管理

默認情況下,ASP.NET Web 服務模型采用無狀態的服務結構;它并不是本能地與來自同一個用戶的多個調用相關。另外,客戶端每次調用 ASP.NET Web 服務時,都創建一個新的對象以服務于該請求。方法調用完成后,該對象即被破壞。要維護請求之間的狀態,可以使用 ASP.NET 頁面使用的相同技術(例如,Session 和 Application 屬性包),也可以自己實現自定義的解決方案。

.NET Remoting 支持許多狀態管理選項,并且可能與來自同一個用戶的多個調用相關或不相關,這取決于您選擇的對象生命周期架構。SingleCall 對象是無狀態的(如用于調用 ASP.NET Web 服務的對象),Singleton 對象共享所有客戶端的狀態,客戶端激活的對象在每個客戶端的基礎上保持狀態(帶有其產生的所有相關的可升級性和可靠性問題)。

性能

從原始性能方面來講,使用 TCP 信道和二進制格式化程序時,.NET Remoting 管線能夠提供最快的通信。在我們進行的比較 ASP.NET Web 服務和 .NET Remoting 的相對性能的幾乎所有的測試中,ASP.NET Web 服務在性能上都超出了使用 HTTP 或 TCP 信道的 SOAP 格式化程序的 .NET Remoting 端點。更有意思的是,使用二進制格式化程序和 HTTP 信道的 ASP.NET 和 .NET Remoting 端點在性能上非常相近。(更多信息,請參見 Performance Comparison:NET Remoting vs. ASP.NET Web Services。)

企業服務

ASP.NET Web 服務或通過 .NET Remoting 提供的對象可以使用本地事務根據單個數據庫協調工作。如果需要根據多個資源協調工作,可以使用 .NET 企業服務(又稱 COM+)公布的事務(由 COM+ 管線管理的 DTC 分布式事務)。但要注意的是,ASP.NET Web 服務和 .NET Remoting 管線都不能傳播公布的事務,因此兩種端點都不可能通過跨進程的調用繼承公布的事務。

這不一定是件壞事。一般來講,公布的事務比本地事務代價要高,而要跨進程傳播公布的事務,則代價會更高。如果確實需要這一功能,簡單的解決方案是在 .NET 企業服務的服務器應用程序中部署一個從 System.EnterpriseServices.ServicedComponent 派生的類(更多信息,請參見 COM+ Integration:How .NET Enterprise Services Can Help You Build Distributed Applications)。對該類對象的跨進程調用將使用 DCOM 進行處理,以確保正確傳播事務環境。較難的解決方案是使用底層的 API,手動傳播分布的事務。

值得注意的是,傳統的分布式事務模型一般不適用于松散耦合的 Web 服務。基于補償事務的模型(即,撤消其他事務所提交工作的事務)更有意義,因為其隔離約束條件并不是很嚴格。在包括 Microsoft 的 Web 服務供應商中有一種普遍的說法,即 Web 服務空間需要的事務模型越靈活,該空間中進行的工作越多。等到定義出 Web 服務事務的標準方法時,您就可以根據情況使用本地或公布的事務實現自己的補償架構了。

 


小結
雖然 .NET Remoting 基礎結構和 ASP.NET Web 服務都可以進行跨進程通信,但每種設計適用于不同的用戶。ASP.NET Web 服務提供了簡單的編程模型,并具有廣泛的使用范圍。.NET Remoting 提供了較為復雜的編程模型,而且使用范圍窄得多。請務必了解這兩種技術的工作原理,并選擇適合您應用程序的技術。在任意一種情況下,都要使用 IIS 和 ASP.NET 管理進程生命周期,并提供一般的安全性。


 

posted on 2007-10-24 17:19 夢在天涯 閱讀(5632) 評論(0)  編輯 收藏 引用 所屬分類: 64bit/FW3.5

公告

EMail:itech001#126.com

導航

統計

  • 隨筆 - 461
  • 文章 - 4
  • 評論 - 746
  • 引用 - 0

常用鏈接

隨筆分類

隨筆檔案

收藏夾

Blogs

c#(csharp)

C++(cpp)

Enlish

Forums(bbs)

My self

Often go

Useful Webs

Xml/Uml/html

搜索

  •  

積分與排名

  • 積分 - 1813108
  • 排名 - 5

最新評論

閱讀排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
      <noscript id="pjuwb"></noscript>
            <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
              <dd id="pjuwb"></dd>
              <abbr id="pjuwb"></abbr>
              亚洲人成77777在线观看网| 欧美成人国产va精品日本一级| 久久久精品一区二区三区| 亚洲视频axxx| 性做久久久久久久免费看| 欧美一区二区在线免费观看| 香蕉久久一区二区不卡无毒影院| 蜜臀久久99精品久久久画质超高清| 91久久国产综合久久| 91久久精品国产91性色tv| 制服丝袜亚洲播放| 久久精品最新地址| 亚洲国产精品一区二区三区| 亚洲欧美电影院| 国产综合香蕉五月婷在线| 欧美激情国产日韩| 久久精品亚洲一区二区| 一区二区黄色| 欧美在线视屏| 欧美日韩卡一卡二| 国产又爽又黄的激情精品视频| 欧美日韩国产亚洲一区 | 欧美国产在线观看| 亚洲国产另类久久精品| 亚洲一区二区在线| 一二三四社区欧美黄| 欧美一级片在线播放| 欧美不卡激情三级在线观看| 国产精品一区二区三区观看| 亚洲三级免费电影| 久久综合免费视频影院| 一本色道久久综合亚洲91| 久久一区激情| 国产一区二区三区免费观看| 国产精品久久久久久久久搜平片| 欧美精品一区二区在线观看| 国产亚洲高清视频| 午夜精品久久久久久久久久久久久| 这里只有精品电影| 免费亚洲婷婷| 欧美自拍丝袜亚洲| 国产欧美日韩综合一区在线播放| 国产精品青草久久| 亚洲作爱视频| 亚洲免费婷婷| 亚洲成色777777女色窝| 亚洲国产成人av| 欧美一区二区视频观看视频| 一区二区三区产品免费精品久久75| 一区二区久久久久| 亚洲二区在线观看| 久久嫩草精品久久久精品一| 国产欧美日韩视频| 欧美一区二区三区视频在线观看 | 亚洲一本大道在线| 亚洲国产精品悠悠久久琪琪| 亚洲美女精品一区| 欧美成人在线免费视频| 欧美午夜电影在线| 国产女主播在线一区二区| 亚洲在线第一页| 亚洲自拍偷拍色片视频| 国产精品色一区二区三区| 亚洲一二三四久久| 亚洲影视九九影院在线观看| 国产精品一级在线| 久久久久国内| 老牛嫩草一区二区三区日本| 欧美日本一区二区三区| 亚洲肉体裸体xxxx137| 91久久综合| 国产精品乱子久久久久| 久久激情中文| 麻豆精品视频在线| 日韩一区二区精品| 亚洲一区二区在线播放| 国产一区二区丝袜高跟鞋图片| 99精品国产在热久久婷婷| 久久成人综合网| 久久久xxx| 日韩图片一区| 午夜精品一区二区三区四区| 黄色影院成人| 亚洲精品国产欧美| 久久视频精品在线| 亚洲免费成人av电影| 亚洲一区二区三区精品动漫| 国产一区在线观看视频| 91久久久久| 国产亚洲一区二区在线观看| 免费在线一区二区| 国产精品美女久久久久av超清| 最新亚洲电影| 亚洲一区二区三区在线看| 亚洲高清网站| 亚洲影院污污.| 亚洲精选一区| 久久精品国产精品亚洲| 亚洲视频999| 久久视频精品在线| 小黄鸭视频精品导航| 免费看亚洲片| 久久久www成人免费精品| 欧美巨乳在线观看| 欧美+日本+国产+在线a∨观看| 亚洲欧美日韩天堂一区二区| 久久中文精品| 欧美呦呦网站| 欧美色中文字幕| 欧美大片免费| 韩国精品在线观看| 久久精品国产一区二区三区免费看 | 亚洲国产欧美国产综合一区| 久久久久一本一区二区青青蜜月| 国产精品久久久久久久久久免费 | 国产色产综合产在线视频| 亚洲国产精品精华液2区45| 国产亚洲精品bv在线观看| 一区二区av| av成人动漫| 欧美黄污视频| 亚洲第一精品影视| 亚洲国产精品久久久久婷婷884| 欧美激情亚洲另类| 欧美高清视频| 一区二区三区产品免费精品久久75 | 亚洲激情网站| 亚洲电影观看| 欧美精品在线一区| 亚洲视频在线观看三级| 免费观看在线综合| 欧美成人午夜免费视在线看片 | 亚洲国产综合在线| 欧美日韩久久不卡| 欧美激情精品久久久久| 影音先锋成人资源站| 久久精品国产v日韩v亚洲| 久久精品视频在线| 国产综合久久久久影院| 久久精品国产99精品国产亚洲性色 | 欧美日韩三级视频| 亚洲精品欧洲精品| 亚洲手机成人高清视频| 国产精品xxx在线观看www| 亚洲一区二区三区高清| 久久久www成人免费毛片麻豆| 免费人成精品欧美精品| 国产酒店精品激情| 亚洲午夜极品| 久久aⅴ乱码一区二区三区| 国产欧美综合在线| 久久久免费精品视频| 亚洲另类在线视频| 欧美日韩岛国| 亚洲一区尤物| 久久尤物视频| 欧美日韩免费观看一区| 中文在线一区| 久久中文欧美| 亚洲少妇中出一区| 国产亚洲aⅴaaaaaa毛片| 久久亚洲精品欧美| 日韩午夜激情av| 久久久伊人欧美| 91久久线看在观草草青青| 国产精品hd| 麻豆成人综合网| 久久本道综合色狠狠五月| 伊人成人开心激情综合网| 欧美日韩不卡在线| 欧美一区二区三区在线看 | 亚洲视频精品| 美女国产一区| 亚洲先锋成人| 亚洲国产欧美国产综合一区 | 欧美一区二区播放| 亚洲第一精品在线| 国产精品久久影院| 欧美成人精品高清在线播放| 亚洲欧美福利一区二区| 亚洲人成在线观看| 久久久青草婷婷精品综合日韩| 国产精品一区二区三区成人| 久久精品国产免费看久久精品| 亚洲无限乱码一二三四麻| 国产欧美日韩三区| 欧美日韩福利在线观看| 欧美在线日韩精品| 亚洲性视频h| 亚洲另类视频| 亚洲国产精品va在线看黑人动漫| 在线观看精品| 国产精品高潮呻吟视频| 老色鬼精品视频在线观看播放| 久久天堂成人| 亚洲素人一区二区| 亚洲作爱视频| 日韩亚洲欧美在线观看| 亚洲国产欧美一区二区三区同亚洲| 久久天天狠狠|