2016-05-19 78 views
1

我正在使用一個相當昂貴的外部API(每個請求都有成本),這使得使用它的測試代碼不切實際。使用代理緩存昂貴的傳出HTTP請求?

在一個理想的世界中,我會有一個代理服務器,我會執行我的請求,它會無限期地緩存每個請求(基於URL +查詢字符串),並且只有在明確地使緩存失效給出請求。用最少的配置就可以提供這樣的服務器嗎?

我當前的堆棧是Node.js,Docker,Nginx,PostgreSQL & AWS S3(非臨時狀態)。我認爲清漆可能會完成我所需要的,但我不確定。

+0

該API不提供免費的測試場地嗎? – DaSourcerer

+0

不幸的是,不幸的是....../ –

+0

聽起來好像它應該工作 - 否則看看memcached - 它確實如此... – Jensd

回答

0

清漆可以並將完成,但只有當你建立一個'測試'API,返回一些類似的數據,你可以玩。如果您需要省錢,最好的辦法就是多次查詢API以獲得不同的典型響應。一旦你知道了期望的東西,創建一些虛擬API,甚至可以使用一些靜態的JSON或XML文件來模擬它。在這一點上,您可以測試Varnish和Cache失效,給出一些代碼示例,我會非常樂意幫助您瞭解它的語法。

+1

謝謝。我最終編寫了一個將「客戶端」API調用「記憶」/緩存到AWS S3的庫。只是開源實際上https://github.com/blockai/persistent-memoize –