国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

webservice系列教學(2)

2024-07-21 02:21:53
字體:
來源:轉載
供稿:網友
3.webservice的技術特點
長項一: 跨防火墻的通信
如果應用程序有成千上萬的用戶,而且分布在世界各地,那么客戶端和服務器之間的通信將是一個棘手的問
題。因為客戶端和服務器之間通常會有防火墻或者代理服務器。在這種情況下,使用dcom就不是那么簡單,通常也不便于把客戶端程序發布到數量如此龐大的每一個用戶手中。傳統的做法是,選擇用瀏覽器作為客戶端,寫下一大堆asp頁面,把應用程序的中間層暴露給最終用戶。這樣做的結果是開發難度大,程序很難維護。
舉個例子,在應用程序里加入一個新頁面,必須先建立好用戶界面(web頁面),并在這個頁面后面,包含相應商業邏輯的中間層組件,還要再建立至少一個asp頁面,用來接受用戶輸入的信息,調用中間層組件,把結果格式化為html形式,最后還要把“結果頁”送回瀏覽器。要是客戶端代碼不再如此依賴于html表單,客戶端的編程就簡單多了。
如果中間層組件換成web service的話,就可以從用戶界面直接調用中間層組件,從而省掉建立asp頁面的那一步。要調用web service,可以直接使用microsoft soap toolkit或.net這樣的soap客戶端,也可以使用自己開發的soap客戶端,然后把它和應用程序連接起來。不僅縮短了開發周期,還減少了代碼復雜度,并能夠增強應用程序的可維護性。同時,應用程序也不再需要在每次調用中間層組件時,都跳轉到相應的“結果頁”。
從經驗來看,在一個用戶界面和中間層有較多交互的應用程序中,使用web service這種結構,可以節省花在用戶界面編程上20%的開發時間。另外,這樣一個由web service組成的中間層,完全可以在應用程序集成或其它場合下重用。最后,通過web service把應用程序的邏輯和數據“暴露”出來,還可以讓其它平臺上的客戶重用這些應用程序。
長項二: 應用程序集成
企業級的應用程序開發者都知道,企業里經常都要把用不同語言寫成的、在不同平臺上運行的各種程序集成起來,而這種集成將花費很大的開發力量。應用程序經常需要從運行在ibm主機上的程序中獲取數據;或者把數據發送到主機或unix應用程序中去。即使在同一個平臺上,不同軟件廠商生產的各種軟件也常常需要集成起來。通過web service,應用程序可以用標準的方法把功能和數據“暴露”出來,供其它應用程序使用。
例如,有一個訂單登錄程序,用于登錄從客戶來的新訂單,包括客戶信息、發貨地址、數量、價格和付款方式等內容;還有一個訂單執行程序,用于實際貨物發送的管理。這兩個程序來自不同軟件廠商。一份新訂單進來之后,訂單登錄程序需要通知訂單執行程序發送貨物。通過在訂單執行程序上面增加一層web service,訂單執行程序可以把“add order”函數“暴露”出來。這樣,每當有新訂單到來時,訂單登錄程序就可以調用這個函數來發送貨物了。
長項三: b2b的集成
用web service集成應用程序,可以使公司內部的商務處理更加自動化。但當交易跨越供應商和客戶、突破公司的界限時會怎么樣呢?跨公司的商務交易集成通常叫做b2b集成。
web service是b2b集成成功的關鍵。通過web service,公司可以把關鍵的商務應用“暴露”給指定的供應商和客戶。例如,把電子下單系統和電子發票系統“暴露”出來,客戶就可以以電子的方式發送訂單,供應商則可以以電子的方式發送原料采購發票。當然,這并不是一個新的概念, edi(電子文檔交換)早就是這樣了。但是,web service的實現要比edi簡單得多,而且web service運行在internet上,在世界任何地方都可輕易實現,其運行成本就相對較低。不過,web service并不像edi那樣,是文檔交換或b2b集成的完整解決方案。web service只是b2b集成的一個關鍵部分,還需要許多其它的部分才能實現集成。
用web service來實現b2b集成的最大好處在于可以輕易實現互操作性。只要把商務邏輯“暴露”出來,成為web service,就可以讓任何指定的合作伙伴調用這些商務邏輯,而不管他們的系統在什么平臺上運行,使用什么開發語言。這樣就大大減少了花在b2b集成上的時間和成本,讓許多原本無法承受edi的中小企業也能實現b2b集成。

長項四: 軟件和數據重用
軟件重用是一個很大的主題,重用的形式很多,重用的程度有大有小。最基本的形式是源代碼模塊或者類一級的重用,另一種形式是二進制形式的組件重用。

當前,像表格控件或用戶界面控件這樣的可重用軟件組件,在市場上都占有很大的份額。但這類軟件的重用有一個很大的限制,就是重用僅限于代碼,數據不能重用。原因在于,發布組件甚至源代碼都比較容易,但要發布數據就沒那么容易,除非是不會經常變化的靜態數據。
web service在允許重用代碼的同時,可以重用代碼背后的數據。使用web service,再也不必像以前那樣,要先從第三方購買、安裝軟件組件,再從應用程序中調用這些組件;只需要直接調用遠端的web service就可以了。舉個例子,要在應用程序中確認用戶輸入的地址,只需把這個地址直接發送給相應的web service,這個web service 就會幫你查閱街道地址、城市、省區和郵政編碼等信息,確認這個地址是否在相應的郵政編碼區域。web service 的提供商可以按時間或使用次數來對這項服務進行收費。這樣的服務要通過組件重用來實現是不可能的,那樣的話你必須下載并安裝好包含街道地址、城市、省區和郵政編碼等信息的數據庫,而且這個數據庫還是不能實時更新的。
另一種軟件重用的情況是,把好幾個應用程序的功能集成起來。例如,要建立一個局域網上的門戶站點應用,讓用戶既可以查詢聯邦快遞包裹,查看股市行情,又可以管理自己的日程安排,還可以在線購買電影票。現在web上有很多應用程序供應商,都在其應用中實現了這些功能。一旦他們把這些功能都通過web service “暴露”出來,就可以非常容易地把所有這些功能都集成到你的門戶站點中,為用戶提供一個統一的、友好的界面。
將來,許多應用程序都會利用web service,把當前基于組件的應用程序結構擴展為組件/web service 的混合結構,可以在應用程序中使用第三方的web service 提供的功能,也可以把自己的應用程序功能通過web service 提供給別人。兩種情況下,都可以重用代碼和代碼背后的數據。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 东山县| 黎平县| 北票市| 吉木乃县| 大石桥市| 霍山县| 东至县| 庄浪县| 平顺县| 文化| 东海县| 墨竹工卡县| 修文县| 莆田市| 邵阳市| 德令哈市| 马关县| 泊头市| 牙克石市| 福建省| 安陆市| 湘潭市| 洪洞县| 九台市| 信阳市| 柳江县| 钟祥市| 邹平县| 溧水县| 芷江| 甘谷县| 临海市| 东乡族自治县| 合作市| 瑞金市| 安徽省| 肥东县| 灵武市| 合山市| 武功县| 南京市|