Beste Möglichkeit, Daten vom C ++ - Programm an den Rails Server zu senden
-
29-10-2019 - |
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?
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.