簡體   English   中英

自動檢查RESTful服務,而無需致電?

[英]Check RESTful service automatically, without a call?

想象一下場景:您有一個數據庫,該數據庫由超過1個應用程序查詢/更新,並且您還具有使用該數據庫的RESTful服務。

是否可以以某種方式通知客戶端(網頁或其他任何內容)數據庫中有新數據,而無需每秒調用網絡服務來查找新數據?

就像RMI方法學一樣,這個問題更多的是“反應性”的。

我可能在做夢,但是必須有一種方法,而不必每隔XX秒調用一次AJAX。

PS。 如果確實需要AJAX調用,是否有更好/更智能的方法呢?

抱歉,這個問題太傻了。

感謝您的寶貴時間。

您正在談論的這種“反應式”東西又是“事件驅動”的Web服務(例如,您可以通過使用node.js來實現)。 事件更新通常是通過“消息隊列”提供的,多個使用者都在監聽消息更新,並做出相應的反應。

特別是,通常通過publisher subscriber設計模式來完成偵聽消息隊列中這些更新的操作。 這些天非常流行,甚至被包含在一些較新的數據庫中。

以Redis DB的pub sub功能為例。

如果該服務確實是RESTful的,而不僅僅是使用REST作為流行語,那么我想最簡單的方法就是使用If-Modified-Since標頭不斷輪詢的資源。 該響應應該在某個地方的緩存中,客戶端應該從那里獲取它,並且應該在有新數據時重置緩存。

另一方面,如果您實際上並不關心REST約束,則可以遵循Kristian的響應並通過消息隊列,pub-sub等使用某種通知。

兩者之間的一種折衷方案是僅擁有一個通知,告知客戶端服務器具有新數據,而不在通知中發送該數據。 那可能就是我要做的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM