2015-09-29 53 views
1

我需要部署一個權威的名稱服務器使用和我發現miekg/dns包幾乎適合帳單,但我找不到如何存儲/持久記錄(即在磁盤上)。目前,它似乎將所有內容都存儲在地圖中,但是我猜想在服務器關閉時它已全部消失。有什麼我丟失或插入持久性存儲引擎的簡單方法嗎?如何存儲DNS記錄(去權威名稱服務器)

+0

你想將數據存儲在人類可讀/可編輯的文件中,或者你可以將它們序列化,但是很方便嗎?如果後者是真的,這個答案可能是在正確的方向邁出的一步http://stackoverflow.com/a/19763256/3570747(我知道它不能完全回答你的問題)。我假設你還想知道如何在資源記錄更新時觸發文件寫入? – vastlysuperiorman

+0

@vastlysuperiorman這個問題更多的是關於miekg/dns包如何工作(即我該如何掛鉤數據庫並保持與服務器同步),而不是如何序列化數據。 –

回答

2

miekg/dns是一個庫,不是一個功能齊全的DNS服務器。它支持RFC 1035區域文件(最初由綁定使用):zscan.go解析區域文件,zgenerate.go生成區域字符串。

如果您正在查找基於此庫的完整DNS服務器,請在自述文件中檢查Users部分或查看基於從etcd讀取區域的庫的discodns服務器。

0

IMO最簡單的解決方案是Redis,它有幾個可用的庫。即使這不是你的長期解決方案,它對於原型設計也很有效。從那裏你只需要將數據序列化/反序列化到/從一個string/[]byte /編寫一個簡單的緩存層,加載一個保存的狀態,並推動改變發生時。

相關問題