基于Http協議的Java隧道通訊 (上)

發表于:2008-06-11來源:作者:點擊數: 標簽:HttphttpHTTPjavaJAVA
關鍵字:Http協議 Java隧道通訊 摘要 基于Java平臺的企業應用可以通過Java隧道技術實現應用在因特網上部署。Java隧道技術用現有的Web Server和Servlet容器就可以建立Java消息隧道和遠程方法調用。由于基于Http協議,所以Java隧道是防火墻透明的隧道。Java隧道
關鍵字:Http協議 Java隧道通訊

摘要

   基于Java平臺的企業應用可以通過Java隧道技術實現應用在因特網上部署。Java隧道技術用現有的Web Server和Servlet容器就可以建立Java消息隧道和遠程方法調用。由于基于Http協議,所以Java隧道是防火墻透明的隧道。Java隧道技術對于基于Java平臺的因特網企業應用是一個不錯的選擇。

  1.引言

  在以因特網為基礎的企業應用中,穿越防火墻是企業應用系統必須面對的問題。而Http協議是唯一一個可以在因特網中自由來往的協議,防火墻只有對Http訪問是透明的,其它協議都會被擋在防火墻之外。Web Service正是基于這個原因,采用Http完成異構企業應用在因特網上的整合。本文提出一個方案,可以使基于Java平臺的企業應用不必等待Web Service的漸漸成熟,而利用Java隧道技術實現在因特網上的企業應用部署。

  Java隧道技術不是一個新的技術,它是Java對象序列化和Web技術的結合。2001年筆者就曾經做過基于Java隧道的試驗。關于Java Servlet的書籍也有對Java隧道技術的相關論述(參考文獻[2])。本文首先回顧一下Java隧道技術的基本原理,再通過一個實例來實現它。以此為后面的Java隧道回調技術和基于Java隧道技術的因特網通訊打下基礎。

  本文的內容可以用于Java Web Start客戶端在因特網上的部署,可以用于利用因特網互連的Java應用服務

  2.Java隧道通訊

  Web Service技術中的SOAP協議(Simple Object Application Protocol),簡單的說是把對象用XML來序列化和反序列化的協議。XML表述的好處就是平臺的獨立性,不管對象在不同的平臺中表現的形式是什么樣的,最終都可以用XML來實現對象的互換。并且,基于Http協議的Web Service可以穿越防火墻。 Web Service技術整合因特網上的應用是它的強項。Web Service技術是一個很好的創意,包括IBM,Microsoft,Sun等公司都極力推出自己的相關產品。我們可以說,在未來的異構平臺的集成,B2B應用中,Web Service將發揮重要的作用。

  然而,對于Java平臺的企業應用,你可以用Web Service相同的原理,利用Java平臺的對象序列化,再借助Web技術,完成因特網上的應用部署。這樣的技術就是Java的隧道技術。因為這個技術都是利用現有的基礎技術來實現的,所以可以非常容易的完成系統的構架。當然Java隧道與Web Service的定位是完全不同的,他們應該用在不同的場合。Web Service更加強大,更加通用化,是一套新興的互相訪問的標準。也正是由于Web Service的強大,所以它也更復雜?;卮鹣旅娴膯栴},來看看你需要哪種技術來構架你的應用:

  1.互連的系統是否都是Java平臺?
  2.是否要在Inte.net上部署?
  3.是否要穿越防火墻?

  如果第一個問題的答案是"否",其它問題回答"是",那么你別無選擇,必須用Web Server技術;如果以上的問題的回答都是"是"的話,你可以用Web Service來構架系統,當然,你也可以用更便捷,簡單,高效的Java隧道技術。

  Java隧道技術的基本構架如下圖。Java隧道系統的通訊構架,由Web Server提供Http服務,Servlet容器處理Java序列化對象。對于這樣的一個框架,我們可以用常見的Tomcat,Jetty等軟件作為Java隧道技術的運行基礎環境。

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97