C#+ICE+TCP通訊=資料轉送

來源:互聯網
上載者:User

標籤:style   blog   http   java   使用   os   io   strong   

最近項目中運用到了ICE檔案傳輸。第一課(ICE的介紹)

        一、 介紹ICE

       ICE(Internet Communications Engine)是Zeroc提供的一款高效能的中介軟體。使用ICE能使得(C#、php、c++、java或python)與java,c++,.net,python等進行互動。基於ICE可以實現電信級的解決方案。 ICE ,是一種流行的物件導向的中介軟體,用來作網路通訊引擎。

       二、ICE 的好處

  1. 物件導向的語義,所有的操作調用都使用遲後綁定。 
  2. 支援同步和非同步訊息傳遞,提供了同步和非同步操作調用和指派,提供了發布——訂閱訊息傳遞機制。 
  3. 與硬體架構無關,用戶端及伺服器與底層的硬體架構屏蔽開來。對於應用代碼而言,像位元組序和填充這樣的問題都隱藏了起來。 
  4. 與上層的程式設計語言無關,用戶端和伺服器可以分別部署,所用語言也可以不同,支援C#、C++、Java語言,用戶端支援PHP語言。  
  5. 與採用的作業系統無關,ICE完全是可移植的,同樣的源碼能夠在Windows、Linux、MacOS和UNIX上編譯和運行。 
  6. 完全是線程化的,其API是安全執行緒的。
  7. 採用TCP、IP 和UDP作為傳輸協議,用戶端和伺服器代碼都不需要瞭解底層的傳輸機制。 
  8. 伺服器的位置是對使用者透明的,ICE常式負責定位對象,並管理底層的傳輸機制,比如開啟和關閉串連。客戶與伺服器之間的互動顯得像是不需連線的。伺服器可以遷移到不同的物理地址,而不會使客戶持有的代理失效,而客戶完全不知道對象實現是怎樣分布在多個伺服器處理序上的。

      三、為什麼要使用中介軟體?

      設想一個這樣的情境:對於一個大型網站來說,往往有很多個web伺服器,每個web伺服器都存在很多對於資料庫的操作。如果直接在程式上直接操作資料庫,那麼勢必要在每台web

伺服器都設定資料庫的使用者名稱,密碼等資訊,這是極度不安全的。並且如果我們要統一對資料庫的操作進行管理和修改等,那麼久要去每個web伺服器上修改。因此,這時候中介軟體就產

了。

     它是基於SOA(面向服務架構)的思想,將對資料庫的操作統一成一個服務,放置於一台服務機上,每個web伺服器要對資料庫進行操作,就可以直接存取這個提供中介軟體服務的服務

器。還有一點,考慮到效能問題,這裡的提供服務的機子我們不使用html和xml傳輸資料,一般使用TCP,UDP這層的通訊。因此ICE就是現在非常流行的網站開發中介軟體之一。

四、ICE通訊結構圖

        ICE有分為提供服務的一方Server和尋求服務的一方Client,兩台機子上都需要安裝ICE組件,他們的通訊結構如下:

 

Client端應該事Crowdsourced Security Testing道Server端能提供的服務是什麼,有什麼格式?這就是圖中的Proxy Code,在Proxy Code中定義好了類和介面。Server端中介面定義的就是Skeleton,具體實現接

口的是Server Application,Server Application可以是C++,java,C#等寫的,但是ICE不提供PHP寫Server端。

 

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.