Frage

Ich habe ein C ++ - Programm, das ständig eine große Datenmenge generiert, die an einen Rails-Server gesendet werden muss.Sowohl das Programm als auch der Server befinden sich auf demselben Computer, auf dem Suse Linux ausgeführt wird.

Was ist die effizienteste und einfachste Lösung dafür?

War es hilfreich?

Lösung

Steckdosen sind der richtige Weg.Wenn Sie gute asynchrone und plattformübergreifende Sockets in C ++ wünschen, ist Boost :: Asio wahrscheinlich die beste Wahl.

Andere Tipps

Sie können die Daten wie gewünscht speichern (Datei oder Datenbank).

Die einzige Schwierigkeit besteht darin, Ihre Rails-App darauf aufmerksam zu machen, dass das C ++ - Programm abgeschlossen ist.
Ich würde Ihnen dringend empfehlen, diese Informationen im Cache zu speichern, damit es nicht viel kostet, dies in jedem von Ihnen benötigten Zeitraum zu überprüfen.

Sie können Sockets verwenden, da sich beide Programme auf demselben lokalen Computer befinden. Im Allgemeinen sollte es ziemlich einfach sein, die serialisierten Daten über einen lokalen Socket zu senden.Da der Socket einen internen Puffer verwendet, sollte die Übertragungszeit sehr schnell sein.Ihr C ++ - Programm kann entweder Daten an den Rails-Server senden oder den C ++ - Programm vom Rails-Server abfragen lassen, sofern Sie in Ihrem C ++ - Programm einen Cache einrichten, in dem die Daten zwischen Abrufaufrufen gespeichert werden.Die Push-Methode würde wahrscheinlich am besten funktionieren.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top