2016-11-22 81 views
0

我是.NET後端開發人員,負責一個包含網站平臺的項目。創建WCF保持活動機制的最佳方法

其中一個要求是有支付過程。在這個過程中,我必須有一些計算器服務。

根據存儲在數據庫中的某些標準計算每個客戶的付款。

我使用的技術:

  1. 的ASP.NET Web API 2
  2. SQL服務器
  3. Windows服務/控制檯後端邏輯應用

這個計算器應爲上述所有部分提供服務。 這意味着當客戶端在網站上並要求付款時,WebApi可以訪問此付款過程,當後端邏輯需要計算時也會發生同樣的情況等等。

我不確定如果我採取了最佳方法,但是我爲此解決方案使用HTTP綁定創建了一個簡單的WCF服務 。

但是我對此有些懷疑,因爲WCF並不總是可靠的,如果它失敗了,我需要做一些檢查來查看進程是否還活着。

所以我有2個問題:

  • 是WCF服務爲我的做法正確的選擇?有沒有更好的方法?

  • 如果WCF服務是正確的選擇有沒有辦法在WebAPI中創建保持活動機制?

+0

爲什麼要使用WCF服務?你不能從網站本身查詢數據庫嗎?你需要計算器用於其他服務嗎? – pipelinecache

+0

關於WCF服務的評論旁邊並不總是可靠的。你爲什麼認爲它不可靠? – pipelinecache

+0

是的,我試圖避免把邏輯放在數據庫中,除此之外,我不希望每次付款過程完成到達數據庫的標準,我更願意將所有數據提供給某種服務然後爲任何其他進程/ webapi等提供此服務.. – user2320176

回答

0

根據提供的信息和評論中給出的答案,使用WebAPI來計算任何數據是沒有用的。

從我的觀點來看,您需要添加一個計算過程的項目。這包括從數據庫中檢索數據並根據您網站提供的信息計算數據。該項目將計算的數據返回到您的網站。

不需要Web服務,Windows服務或控制檯應用程序。

對於您的管理員,您創建了一個維護數據庫幷包含相同項目的第二個項目。

+0

對不起,但你錯了,webapi是計算服務的消費者之一。我使用webapi只是爲了連接這個計算器服務並檢索計算數據。 – user2320176

+0

您有一個網站查詢另一個網站。與通過包含計算模塊的其他項目查詢數據庫相比,這種方法更爲昂貴。當你涉及安全層和治理時,你會這麼做的唯一原因。 請告訴我你的基礎設施是怎樣的。從我的觀點來看,在這個過程中已經結束了。 – pipelinecache

+0

我認爲你是對的,感謝您的答案,我認爲我有更好的接近,我不需要一個不同的服務這個..我覺得有什麼不是在這裏與這個WCF服務。 – user2320176

相關問題