Ich verwende eine Beego-Anwendung, die auf Updates in/etc/hosts (über Docker-Links) angewiesen ist, um andere Server zu finden./etc/hosts wird aktualisiert, aber die Anwendung verwendet keine neuen Hosts, es sei denn, sie wird neu gestartet oder nachdem sie zu lange gewartet hat. Nach der Überprüfung der Dokumentation für src/net/hosts sieht es so aus, als ob ich in einer 5-minütigen Aktualisierungszeit gesperrt bin.Gibt es eine Möglichkeit, Hosts in Go zu erzwingen?
Gibt es eine Möglichkeit, diesen Cache zu aktualisieren oder sehe ich dieses Problem falsch?
Ich sehe auch keinen Weg, es ohne Montage zu tun. – thwd
Ich könnte die Timeout-Konstante in src/net/hosts.go ändern und meine eigene benutzerdefinierte Go-Build rollen, aber es muss einen anderen Weg geben. Freut mich zu sehen, dass ich nicht der Einzige bin, sondern an diesem festhalte. – Diablojoe
Normalerweise dynamische Änderungen sollten über einen anderen Mechanismus, wie DNS oder eine andere Konfig db erfolgen. Wenn Sie das Binary mit aktiviertem cgo erstellen, verwendet es den System-Resolver zum Nachschlagen von Hosts (das garantiert auch nicht, dass es für eine kurze Zeit von Ihrem System zwischengespeichert wird, aber es ist in den meisten Fällen weniger als 5 Minuten) – JimB