一步一個腳印學習WCF系列之WCF概要—用戶端與服務(三)

來源:互聯網
上載者:User

  閱讀目錄

   一: 使用者所使用的用戶端和使用者所需要的服務如何互動呢?  

  一: 使用者所使用的用戶端和使用者所需要的服務如何互動呢?

  使用者所使用的用戶端和使用者所需要的服務如何互動呢?其實就是指一個訊息傳遞的流程,我們在這裡就來探討一下,看下面這個Service,如圖一,為了能夠給客戶提供服務的話,這個Service必然要被執行,它被執行的時候必然要放到主機裡面,也就是必然要放到服務的主機裡面,也就是ServiceHost裡面來進行執行的,二,所以這個Service是安插到ServiceHost裡面的,這個Serveice和ServiceHost是在一個主機處理序當中的,大家看圖三多了兩個Endpoint,我們把它之為端點也叫終結點,這個端點的主要作用是用於來提供Service向外發布的介面,如圖四,比如:現在有一個客戶要來訪問這個Service的話,是通過Endpoint來進行訪問的,我們把這張圖比作一個公司,邊界虛框比作公司的大樓,Service比作公司裡面一個一個不同的工作人員來對外提供服務的,Endpoint比作公司的前台主要接待從外部進來的訪問並且把這些訪問提交給公司裡面的工作人員來進行處理,比如:張三是電信公司的拉寬頻,我家掉網了,我來到電信公司,找到前台,讓前台美女聯絡張三,然後張三給我提供修好我家寬頻服務

     

                          圖一                                               圖二                                                   圖三

圖四

  大家看圖五齣現了客戶進程,客戶進程裡面出現了ClientApp也就是用戶端的應用程式,用戶端的應用程式有它自己的邏輯來進行相應的工作,在這個客戶的應用程式當中現在有一個Proxy代理,這個Proxy代理實現由客戶進程到主機處理序之間的通訊,也就是說通訊是由Proxy代理來完成的,但是實際上Proxy代理並不直接與主機處理序的Endpoint來進行通訊,直接與主機處理序的Endpoint來進行通訊的是在用戶端Proxy代理裡面的Endpoint來進行通訊的,如圖六,在WCF這種環境中的話訊息的直接通訊是在兩端的Endpoint,當訊息由一端的端點發出,由另外一端的端點來接收到,再把這個訊息提交給Service來進行處理,比如:現在我們客戶想向Service發一個訊息或者想完成一些特定的功能,首先把做這些事情的需求提交給Proxy代理,然後在由Proxy代理進行封裝提交給客戶進程的Endpoint,再有客戶進程的Endpoint發送給主機處理序的Endpoint,然後主機處理序的Endpoint在把訊息提交給Service,由Service這一段進行處理,最後在反方面發送回來,由Proxy代理來開包,最後提交回到客戶的應用程式當中,如圖七,這就是整個一個訊息傳遞的流程

圖五圖六  圖七 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.