我們有三個Web服務(/a
,/b
,/c
),其中每個服務映射到一個單獨的Java類(ClassA
,ClassB
,ClassC
)的方法(go()
)。如何防止Web服務API中的併發?
只有一個服務應該同時運行(即:/b
無法運行,而/a
正在運行)。然而,因爲這是一個REST API,所以沒有什麼可以阻止客戶端請求同時運行服務。
什麼是服務器上最好的,最簡單的方法執行的服務不同時運行?
更新:這是一個內部應用程序,我們將不會有大的負荷,將只有一個單一的應用程序服務器。
更新:這是一個主觀問題,因爲您可以對影響最終答案的一般應用程序設計作出不同的論點。接受overthink的答案,因爲我發現最有趣和有益的。
@Marcus:它可能是一個內部應用程序,但有內在的侷限性,在這個階段是一個壞主意,設計的東西。你可能會認爲它永遠不需要擴展,但你能確定嗎?把自己的頭痛保存下來,堅持一些最佳做法! – jkp 2009-11-22 03:52:54
@jkp,採取點。 – 2009-11-22 05:35:51