Führen Sie eine Instanz des CLI-Programms für mehrere Telent-Client-Anmeldungen aus

355
satya ranjan

Ich bin mir nicht sicher, ob meine Implementierung korrekt ist. Ich versuche, eine CLI auszuführen, die ich jedes Mal in 'C' implementiert habe, wenn ein Telnet-Client versucht, sich anzumelden.

Hier ist das Problem, vor dem ich stehe: Mein Arbeitsspeicher ist auf 128 MB begrenzt. Die ausführbare Datei benötigt während der Ausführung mindestens 7 MB RAM. Wenn ich versuche, 10 Clients gleichzeitig Telnet-Zugriff zur Verfügung zu stellen, verbraucht es mindestens 70 MB, da es 10 Instanzen mal 7 MB für jedes Mal gibt, wenn das CLI-Programm ausgeführt wird.

Gibt es eine Möglichkeit, meine CLI nur einmal auszuführen (möglicherweise in einem Telnet-Server?) Und mehreren Telnet-Clients den Zugriff auf meine CLI zu erlauben, anstatt sie mehrmals auszuführen?

Wenn ja, wie könnte ich das erreichen?

0
Würde das Programm so umgestaltet werden, dass eine gemeinsam genutzte Bibliothek intensiv genutzt wird, würde dies den RAM-Speicher reduzieren. davidgo vor 6 Jahren 0
Schlagen Sie vor, die gemeinsam genutzte Bibliothek zu verwenden. Hilft es irgendwie, den RAM-Verbrauch zu reduzieren? satya ranjan vor 6 Jahren 0
Ich weiß nicht, was dein Programm macht. Wäre es möglich, es in einen "schweren" Serverteil (Back-End) und einen leichtgewichtigen Client-Teil (Front-End) aufzuteilen? Letzteres könnte mehrmals ausgeführt werden, während eine einzige Instanz des ersteren alle Anforderungen bedienen würde. Kamil Maciorowski vor 6 Jahren 0
Diese Anwendung ist nur eine Cisco-ähnliche CLI-Implementierung, die das quagga routing package mit vtysh verwendet. In meinem Fall verwende ich jedoch nur vtysh, um einen CLI-Zugriff bereitzustellen, der 7 MB benötigt. Diese CLI sollte zum Zeitpunkt des Telnet-Zugriffs ausgeführt werden, aber ich kann nicht zulassen, dass sie 10 Mal für 10 Telnet-Zugriff aufgrund von Speicherproblemen ausgeführt wird. Ich habe mich gefragt, wie Cisco-Router 200 Telnet-Sitzungen bereitstellt. satya ranjan vor 6 Jahren 0

0 Antworten auf die Frage