Wie groß darf eine String-Variable sein?

Hallo Zusammen,

wie groß darf in IPS 4 der Wert einer String-Variablen sein?

Hintergrund: Ich möchte Daten (JSON-String) in regelmäßigen Abständen an einen Web-Server senden. Sofern das senden fehl schlägt, sollen diese Daten in IPS gepuffert werden. Wenn ich diese hintereinander in eine Stringvariable als Puffer schreibe, könnte diese, je nach Zeitraum, in dem die Verbindung zum Server nicht verfügbar ist, recht lang werden.

Oder gibt es andere Möglichkeiten dies umzusetzen?

1024kB

Limitationen — IP-Symcon :: Automatisierungssoftware
Ist aber grundsätzlich eine eher schlechte Idee, weil jede Änderung der Variable einmal komplett durch IPS und alle daran hängenden Webfronts bzw. IPSview etc… gejagt wird.

Momentan mache ich das aber in den Modulen auch so… dort soll noch mal was passieren in der Richtung eines Buffers.

Wenn es nicht zu zeitkritisch ist, schreibe den String doch in eine Datei.

Michael

Danke für den Hinweis.

Bin auch gerade dabei dies in einem Modul umzusetzen - ein Buffer wäre da sehr hilfreich. Dann werde ich die Daten erstmal in eine Datei speichern.

Wieso denn das?
ich speichere bei fast jedem Skriptaufruf durch einen Event mit „SetValueString(IPSObjectID, serialize($IrgendEinArray))“ ganze Arrays ab und habe noch nie einen Fehler oder Performance-Verlust festgestellt.
Und wenn die Variable auch noch mit Hidden attribusiert ist, dürfte es die Webfronts garnicht stören.

Viele Grüße
Harald

Doch auch hidden Variablen werden übertragen.
Habe ich sogar schon mal als genutzt um JavaScript ins WF zu schmuggeln, ohne das die StringVar sichtbar ist.

Das bläht alles den Snapshot auf, und wird zusätzlich noch durch die interne IPS-Nachrichtenschlange gejagt.
Letzteres konnte man gut im Delphi-SDK sehen.

Alternativ steht ja die RegVar-Instanz mit ihrem Buffer zur Verfügung. Die betrifft das nämlich nicht. Ist aber auch deutlich kleiner vom Speicher.

Ich würde die Hinweise in der Doku schon ernst nehmen.
Gerade in Anbetracht der relativ schwachen HW der PIs.

Wobei das ganze natürlich relativ zu sehen ist, ich glaube ein paar kB mehr oder weniger ist egal.
Michael