2017-01-23 48 views
1

Im建立一個服務(休息服務),對數據庫進行內部調用,然後進行一次外部Web服務調用。此服務可用於內部請求,並暴露給外部客戶的電話,我的疑問是如果我可以將此服務命名爲Facade或Gataway。我的確瞭解了Gateway和Facade模式,一個是客戶是外部應用程序,另一個是內部應用程序,所以我沒有發現任何關於這兩種調用的服務模式。內部和外部服務暴露的正確模式

回答

0

在很多方面Gateway/Facadetwo sides of the same coin網關模式將用於簡化對外部Web服務的調用(即提供一致的API),並使用門面模式提供您的簡化版本擁有內部的API給你的客戶。

如果您希望客戶擁有與外部Web服務相同的訪問權限,則可以始終將簡化的外部API直接併入您的外觀。更好的解決方案可能是通過使用command pattern(或類似的),通過使用command pattern(或類似)的方式將其從內部解耦,如果外部Web服務API增加了功能或更改,無論出於什麼原因,您都可以通過簡單的方式修改系統來應對。

我不認爲有一個模式爲您的特定用例,你將不得不根據什麼是最好的/什麼給你最一致的,可維護的代碼工程師的解決方案。