簡體   English   中英

要求API和每分鍾存儲的最佳方法

[英]Best way to request API and store every minute

我有一個應用程序達到了API的速率限制,這會損害用戶體驗。 我有解決這個問題的想法,但不知道這是否是解決此問題的理想選擇。 這個想法有意義嗎,是解決這個問題的好方法嗎? 我應該如何實施呢? 我正在使用react-native和nodejs。

這里是想法:

我的應用程序將從我制作的“中間人” API請求數據。 中間人API會每分鍾從我遇到速率限制問題的主API請求數據(然后應該解決速率限制問題),然后將其存儲一分鍾,直到再次更新。 我當時想最好的方法是在AWS上旋轉一台服務器,每分鍾從其他API請求一次(這是每分鍾獲得請求的最簡單方法嗎?)然后將其存儲在空白的中間人網頁上(或者是否需要將其存儲在MongoDB之類的數據庫中?)。 然后,我的應用將從該中間人網頁/ API調用。

你的主意很好。

您的中間人將是一個緩存代理。 它會按照您所說的那樣工作。 只需看一下https://github.com/active-video/caching-proxy,它幾乎可以滿足您的需求。 它創建了一個服務器,該服務器將接收URL請求,獲取並緩存URL請求,並從現在開始提供緩存的版本。

唯一的缺點是它沒有用於緩存的生存期選項。 您可以分叉添加選項,或者運行守護程序,該守護程序將刪除太舊而無法強制重新獲取的文件。

編輯:緩存代理的一個非常有趣的補充是將有一個頭請求來知道結果是否更改。 雖然並非所有API都提供此功能,但是如果您正在顯示此類信息,則此功能可能會很有用。 僅當HEAD請求不計入您的API限制時...

暫無
暫無

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

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