簡體   English   中英

發布WebService以供公眾訪問

[英]Publish WebService for public access

因此,我有一些開發Java WebServices的經驗。 問題是,我要做的就是將它們部署到localhost。

我的問題是:

我們如何將WebService部署到除localhost以外的服務器上?

我如何在網上搜索並找到WebService的WSDL描述,以便我或世界上其他任何人都可以調用其服務?

如果我在本地主機中有它,那么除了我自己的計算機上的其他人都不能訪問它嗎?...

感謝您的時間

我不認為出於各種原因,您都不想讓開發環境中運行的應用程序可供世界上其他任何人訪問。 本地網絡上的其他人可以通過其網絡主機名訪問本地主機,但這不是世界各地的用戶。

讓我們分別討論您的兩個問題:

我們如何將WebService部署到除localhost以外的服務器上?

您將要建立一個盡可能可用的服務器環境。 如果您想繼續使用Apache Tomcat,則可以與承載Apache Tomcat應用程序的各種服務提供商進行注冊- 許多人都根據預先配置的虛擬服務器(CPU,內存,磁盤空間)的數量和大小提供分層定價,和/或應用程序的每月數據傳輸)。 您甚至可以向雲服務提供商注冊,例如Google CloudAmazon Web ServicesMicrosoft Azure 所有這些工具都提供了用於構建,配置和管理虛擬服務器的工具,然后您可以將其部署到Tomcat和Web服務應用程序中。 這是有關在Azure上設置Tomcat虛擬服務器的詳細教程 然后,您需要管理這些服務器,觀察它們以了解它們的利用率(順便說一句,這將影響它們每月花費您的成本)。

如果您不需要的是服務器管理,則還可以探索“無服務器”選項,例如Google AppEngineAWS Elastic Beanstalk 在此模型中,您只需上載WAR文件,托管服務便可以管理諸如需要多少服務器來處理您的世界各地用戶所提出的所有應用程序SOAP請求之類的事情。 您需要閱讀每種規格,因為從技術上講,您本身並沒有提供Tomcat-在Google的示例中,您實際上是在自己的專有容器中運行,因此您的應用可能需要根據其功能進行一些更改。

根據您選擇的托管服務或雲服務提供商,您的“如何部署”步驟千差萬別。 好的一面是,所有人都提供有關如何“按自己的方式 ”將應用程序專門部署到其中的教程

我如何在網上搜索並找到WebService的WSDL描述,以便我或世界上其他任何人都可以調用其服務?

確定了托管服務或雲服務提供商並部署了應用程序之后,您將擁有一個可訪問的URL,但是您需要努力解決這個問題。 (SOAP) Web服務發現有一些開放規范,但實際上並不是您真正想要的。 您也可以將WSDL URL提交到在線API目錄,例如ProgrammableWebPublic API

自己動手的最簡單方法是運行一個鏈接到WSDL的網站,然后使用搜索引擎優化技術在搜索引擎上列出該網站,並使該網站(及其鏈接到的WSDL)與網絡搜索相關。

變得更加幻想,您可以通過API管理系統將Web服務視為產品。 在較高的層次上,這是通過將Web服務的真實URL隱藏在服務器上來實現的,而是將客戶定向到開發人員的小型網站,在該網站上您可以記錄,營銷,促進發現服務以及提供注冊服務來使用它(這樣您就可以跟蹤和管理全世界正在使用您的Web服務的人)。 然后,客戶端通過稱為API網關后面的單獨URL來使用Web服務。 您可以收取訪問費用或免費提供訪問權限,但限制了客戶端可以發出的並發請求的數量-畢竟,您可能需要向托管服務提供商支付使用費。 一些雲服務提供商AmazonAzure ,獨立的API管理供應商(如ApigeeMashery 等)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM