Czytanie pliku w czasie rzeczywistym za pomocą Node.js

Muszę wypracować najlepszy sposób odczytu danych zapisywanych do pliku za pomocą node.js w czasie rzeczywistym. Problem polega na tym, że Node jest szybko poruszającym się statkiem, co utrudnia znalezienie najlepszej metody rozwiązania problemu.

Co chcę robić
Mam proces java, który robi coś, a następnie zapisuje wyniki tego, co robi w pliku tekstowym. Zwykle trwa od 5 minut do 5 godzin, a dane są zapisywane przez cały czas i mogą osiągnąć nawet dość dużą przepustowość (około 1000 linii na sekundę).

Chciałbym przeczytać ten plik w czasie rzeczywistym, a następnie za pomocą węzła agregować dane i zapisać je w gnieździe, gdzie można je zobrazować na kliencie.

Klient, wykresy, gniazda i logika agregacji są gotowe, ale jestem zdezorientowany co do najlepszego podejścia do odczytu pliku.

Co próbowałem (lub przynajmniej bawiłem się)
FIFO - Mogę powiedzieć mojemu procesowi Java, aby napisał do fifo i przeczytał to za pomocą węzła, tak naprawdę mamy to do czynienia z Perlem, ale ponieważ wszystko inne działa w węźle, sensowne jest przeniesienie kodu.

Unix Sockets - Jak wyżej.

fs.watchFile - czy to zadziała w przypadku tego, czego potrzebujemy?

fs.createReadStream - czy to lepiej niż WatchFile?

fs & tail -f - Wygląda na hack.

Czym właściwie jest moje pytanie
Staram się korzystać z gniazd Unix, wydaje się to najszybszą opcją. Ale czy węzeł ma lepsze wbudowane funkcje do odczytywania plików z fs w czasie rzeczywistym?

questionAnswers(4)

yourAnswerToTheQuestion