2 回答

TA貢獻1796條經(jīng)驗 獲得超10個贊
在這些情況下,有兩種主要方法:
創(chuàng)建充當(dāng)數(shù)據(jù)存儲庫的守護程序,服務(wù)或后臺應(yīng)用程序。您可以根據(jù)需要將其作為HTTP服務(wù)器/ RPC服務(wù)器運行。然后,您的CLI應(yīng)用程序?qū)⒏鶕?jù)需要與此守護程序進行交互。
實現(xiàn)一種持久性機制,該機制將允許在多個CLI應(yīng)用程序執(zhí)行之間寫入和讀取數(shù)據(jù)。您可以使用普通的文本文件,數(shù)據(jù)庫,甚至可以使用golang的編碼/對象的實現(xiàn)在二進制文件中讀寫切片(映射可能會更好)。
您可以根據(jù)上面選擇的策略/方法,通過顯式刪除條目或在后續(xù)執(zhí)行期間不重寫它們,來對條目進行時間戳記并在它們的ttl過期后簡單地將其刪除。
這樣一個開放式問題的示例范圍和數(shù)量太多,無法在單個答案中發(fā)布,并且很可能需要多個特定問題。

TA貢獻1812條經(jīng)驗 獲得超5個贊
使用數(shù)據(jù)庫并存儲盡可能多的詳細信息(fetched_at,主機,路徑,標(biāo)題,meta_desc,錨點等)。您以后可以查詢數(shù)據(jù),將其以結(jié)構(gòu)化格式使用將很有用。如果您不想處理db依賴關(guān)系,則可以嵌入boltdb(pure go)或sqlite(cgo)之類的東西。
- 2 回答
- 0 關(guān)注
- 348 瀏覽
添加回答
舉報