Ich habe 1 Quellserver, der ungefähr 30 GB Dateien enthält, die ich auf 7 andere Server kopieren möchte. Ich zZ SCP die Akten vorbei zu den ersten vier Bedienern und wenn diese Übertragung abgeschlossen ist SCP zu den letzten 3 Bedienern.
Wäre es mit BitTorrent schneller, die Dateien auf einmal an alle 7 zu verteilen? Die interne Verbindung ist zwischen den einzelnen Servern bereits schnell und konsistent. Ich weiß, dass der Quellserver wahrscheinlich etwas entlastet wird, aber dauert es nur länger, die Dateien zu verteilen?
Was ist ein guter skriptfähiger Client, den ich von der Shell aus verwenden kann? Ich möchte, dass jeder nach 100% aufhört zu säen.
quelle
Der Vorteil von BitTorrent gegenüber anderen Tools zur Dateiverteilung, z. B. rsync , besteht darin, dass Clients beginnen, ihre Daten den anderen Clients anzubieten. Wenn der Server also eine langsame Verbindung zu den Clients hat, ist der Durchsatz viel besser.
BT ist jedoch ein Protokoll, das für globales Teilen ausgelegt ist. Sie müssen also ein Mittel finden, um alle anderen Clients außer den 7, die Sie füttern möchten, auszusperren (oder Ihr Strom wird bald in The Pirate Bay enden).
Was das Anhalten bei 100% betrifft, wird dies jeder BT-Client tun: Da kein Client mehr die Daten anfordert, wird kein Seeding mehr durchgeführt. Die Anwendung wird weiterhin ausgeführt, aber sie verursacht nur einen kleinen Datenverlust zwischen den Clients und dem Tracker, um darauf hinzuweisen, dass sie noch verfügbar sind.
Probieren Sie den originalen BitTorrent-Client aus, der in Python geschrieben ist. Auf diese Weise können Sie die gewünschten Änderungen vornehmen. Leider kann ich keinen Link Geldautomaten finden. Jemand?
[BEARBEITEN] Basierend auf einem Kommentar saua : Wenn Sie einen privaten Tracker verwenden, sollten sich Ihre Torrents nicht unerwartet ausbreiten. Sie sollten jedoch nur einen Torrent-Client aus einer zuverlässigen Quelle verwenden. Andernfalls besteht die Gefahr, dass ein Cracker dem Code eine zusätzliche Funktion hinzufügt, mit der private Torrents an einer Stelle veröffentlicht werden, an der sie nicht angezeigt werden sollen.
quelle
BitTorrent ist eine großartige Idee, wenn Sie Dateien über einen Baum von Servern replizieren möchten, ohne beispielsweise einen Remote-Befehl an alle Server senden zu müssen, um vom selben Ort zu kopieren. möglicherweise einen Engpass verursachen.
Twitter-Ingenieure haben dies mit großem Erfolg mit Murder gemacht, das jetzt auf Github ist.
http://engineering.twitter.com/2010/07/murder-fast-datacenter-code-deploys.html
quelle
Wenn alle 8 Ihrer Server mit Bit Torrent an denselben Abschnitt des Netzwerks angeschlossen sind, ist es unwahrscheinlich, dass dies zu einer Beschleunigung führt. In der Tat würden Sie so viele Kollisionen bekommen, dass es wahrscheinlich sehr langsam wäre. BitTorrent würde die Dinge nur beschleunigen, wenn Sie ein vollständig vermitteltes Netzwerk verwenden und die acht Server unabhängig voneinander miteinander kommunizieren können, ohne die Kommunikation zwischen den anderen Servern zu beeinträchtigen.
quelle