Eine Reihe neuer Dateien mit eindeutigen Dateinamen "erscheint" regelmäßig 1 auf einem Server. (Wie Hunderte GB neuer Daten pro Tag sollte die Lösung auf Terabyte skalierbar sein. Jede Datei ist mehrere Megabyte groß, bis zu mehreren zehn Megabyte.)
Es gibt mehrere Computer, die diese Dateien verarbeiten. (Zehn, sollte die Lösung auf Hunderte skalierbar sein.) Es sollte möglich sein , neue Maschinen einfach hinzuzufügen und zu entfernen.
Es gibt Sicherungsdateispeicherserver, auf die jede eingehende Datei für die Archivierung kopiert werden muss . Die Daten dürfen nicht verloren gehen, alle eingehenden Dateien müssen auf dem Backup-Speicherserver bereitgestellt werden.
Jede eingehende Datei wird zur Verarbeitung an einen einzelnen Computer gesendet und sollte auf den Sicherungsspeicherserver kopiert werden.
Der Empfängerserver muss keine Dateien speichern, nachdem er sie auf dem Weg gesendet hat.
Bitte empfehlen Sie eine robuste Lösung, um die Dateien auf die oben beschriebene Weise zu verteilen. Die Lösung darf nicht auf Java basieren. Unix-Way-Lösungen sind vorzuziehen.
Server sind Ubuntu-basiert und befinden sich im selben Rechenzentrum. Alle anderen Dinge können an die Lösungsanforderungen angepasst werden.
1 Beachten Sie, dass ich absichtlich Informationen über den Transport von Dateien zum Dateisystem weglasse. Der Grund dafür ist, dass die Dateien heutzutage von Dritten mit verschiedenen Legacy-Mitteln gesendet werden (seltsamerweise über scp und über ØMQ). Es scheint einfacher zu sein, die clusterübergreifende Schnittstelle auf Dateisystemebene zu kürzen, aber wenn die eine oder andere Lösung tatsächlich einen bestimmten Transport erfordert, können ältere Transporte auf diese aktualisiert werden.