SOA是一個(gè)服務(wù)的集合,這些服務(wù)事實(shí)上是一些為應用程序提供不同功能的類(lèi)。這些類(lèi),或者說(shuō)這些服務(wù),是應用程序常用的基本構建模塊。服務(wù)之間互不關(guān)聯(lián),可以獨立操作也可以協(xié)作。創(chuàng )建獨立的服務(wù)可以提高應用程序的可維護性,因為服務(wù)的優(yōu)化甚至替換是不會(huì )影響系統的其他部分的。這種模塊化也促進(jìn)了各組件之間的松耦合,允許組件更好地復用。(在本章后面的部分還會(huì )深入討論“耦合”這個(gè)概念。) 通常,服務(wù)有兩種類(lèi)型。 ●應用程序無(wú)關(guān)服務(wù):無(wú)關(guān)服務(wù)在提供服務(wù)時(shí)不需要了解應用程序的任何內容。沒(méi)有針對服務(wù)所在的應用程序的特定業(yè)務(wù)規則,沒(méi)有針對特定業(yè)務(wù)的數據操作,也沒(méi)有引用需要這種服務(wù)類(lèi)型知識的外部代碼。 ·應用程序無(wú)關(guān)服務(wù)的一個(gè)例子是將日志消息寫(xiě)入文本文件的類(lèi)。不管應用程序的業(yè)務(wù)目的是什么,這種類(lèi)可以應用于任何應用程序。logger類(lèi)或服務(wù)的方法和屬性不隨應用程序改變,所以logger是與應用程序無(wú)關(guān)的。 ·另一個(gè)例子是和Facebook交互的類(lèi)。這種類(lèi)按一般的方式建立,所以它不做任何修改就可以在其他應用程序中復用。有需要時(shí),任何特定于應用程序的數據都可以傳輸到Facebook服務(wù)中去。 ·應用程序無(wú)關(guān)服務(wù)也可以是類(lèi)的集合,比如用戶(hù)管理系統。不同的應用程序有相同的用戶(hù)和安全信息,這種情況是很常見(jiàn)的。這些信息包括諸如用戶(hù)登錄時(shí)的用戶(hù)名、密碼和用戶(hù)登錄時(shí)賦予的安全角色。如果這個(gè)邏輯能夠廣泛地應用于不同的應用程序,那么它就是應用無(wú)關(guān)的。 ●應用程序特定服務(wù):這些服務(wù)需要了解其工作環(huán)境中的特定問(wèn)題域知識。這意味著(zhù)它們使用應用程序的特定數據,或是需要實(shí)現不適用于通用業(yè)務(wù)程序的規則。這些服務(wù)可以在同一公司的其他地方使用,但如果在一個(gè)完全不同的環(huán)境中,它們就無(wú)法使用。 ·應用程序特定服務(wù)的一個(gè)例子是使用特定業(yè)務(wù)規則的類(lèi)。假設你正在建設一個(gè)銷(xiāo)售管理系統,任何可能超過(guò)10萬(wàn)美元的銷(xiāo)售都必須獲得銷(xiāo)售經(jīng)理的批準。這就是特定于應用程序的規則,所以所有使用這條規則的類(lèi)都是特定于應用程序的。 當構建服務(wù)時(shí),有可能會(huì )做成應用程序無(wú)關(guān)的,以提高可移植性。我們也會(huì )在不同的項目中使用這兩種服務(wù),以進(jìn)一步確保它們的復用。應用程序無(wú)關(guān)服務(wù)并不普遍,但是引入它們是很有用的。在使用它們時(shí)要額外小心,不要和特定于業(yè)務(wù)的邏輯混在一起。 在后續的幾個(gè)小節中,我們將會(huì )講述SOA服務(wù)使用過(guò)程中需要遵循的幾個(gè)基本準則。 |
嘉興雷鳥(niǎo)是一家集企業(yè)軟件開(kāi)發(fā),WEB網(wǎng)站建設,移動(dòng)APP制作等綜合型的互聯(lián)網(wǎng)公司,為嘉興顧客提供一站式的企業(yè)軟件開(kāi)發(fā),安卓app開(kāi)發(fā),ios開(kāi)發(fā)服務(wù),同時(shí)為嘉興企業(yè)提供全面移動(dòng)互聯(lián)軟件技術(shù)解決方案,是嘉興知名的綜合型APP軟件外包開(kāi)發(fā)公司。根據前期調研方案和客戶(hù)實(shí)際需求,以專(zhuān)業(yè)獨到的設計理念、精益求精的技術(shù)精神、嚴格完善的品控系統,為嘉興每一位客戶(hù)提供專(zhuān)屬的移動(dòng)互聯(lián)軟件技術(shù)解決方案。經(jīng)過(guò)不斷積累,嘉興雷鳥(niǎo)陸續推出視頻直播APP、電商商城APP、P2P網(wǎng)貸APP、智能硬件APP開(kāi)發(fā)、移動(dòng)APP開(kāi)發(fā)、微信公眾平臺開(kāi)發(fā)、一元購APP、智慧社區服務(wù)APP、生活服務(wù)O2O系統APP等各類(lèi)APP產(chǎn)品,為嘉興各行企業(yè)向移動(dòng)互聯(lián)網(wǎng)轉型奠定了堅實(shí)基礎。在激烈的市場(chǎng)競爭中,嘉興雷鳥(niǎo)創(chuàng )造了嘉興軟件定制開(kāi)發(fā)行業(yè)的卓越口碑,是具有更高品質(zhì)的移動(dòng)互聯(lián)網(wǎng)軟件技術(shù)定制服務(wù)商。