|
Wenn ein lokales Ding und ein Remote-Ding über eine Eigenschaft mit dem gleichen Namen verfügen und eine weitere Eigenschaft an die Einstellung der Remote-Eigenschaft gebunden ist, legt die Remote-Eigenschaft auch den Wert der lokalen Eigenschaft fest.
|
|
Informationen zum Einrichten von Eigenschaftsbindungen, ob lokal oder remote, finden Sie unter Eigenschaftsbindungen verwalten.
|
Option
|
Beschreibung
|
---|---|
UpdatePropertyValues
|
Akzeptiert einen einzelnen Infotable-Parameter "values", der aus mehreren Zeilen besteht. Jede Zeile enthält den Eigenschaftsnamen, den Wert und die Qualität sowie den Aktualisierungszeitstempel. Eigenschaftswerte können nicht auf NULL festgelegt werden.
Standardmäßig werden die Wertaktualisierungen für jede Eigenschaft separat ausgeführt. Legen Sie die Einstellung GroupPropertyValuesByTime im Abschnitt BasicSettings der Datei platform-settings.json auf true fest, um die Werte nicht nach Eigenschaft, sondern nach Zeitstempel zu sortieren und zu gruppieren.
Wenn die obige Einstellung auf true festgelegt ist, werden die durch Daten ausgelösten Ereignisse und Warnungen für alle Eigenschaften, die mit demselben Zeitstempel aktualisiert wurden, zusammen ausgelöst. Anschließend werden Multi-Ereignis-Abonnements, die für einige oder alle diese Ereignisse registriert wurden, nur einmal pro Zeitstempel ausgeführt, wobei die übereinstimmenden Ereignisse im Parameter "events" übergeben werden.
|
UpdatePropertyValuesBatched
|
Akzeptiert einen einzelnen Infotable-Parameter batches, der aus mehreren Zeilen besteht. Jede Zeile enthält einen Batch von Eigenschaftswerten und den Aktualisierungszeitstempel.
Der Feldwert von batch ist eine Infotable, die aus mehreren Zeilen besteht. Jede Zeile enthält den Eigenschaftsnamen, den Wert und die Qualität. Eigenschaftswerte können nicht auf NULL festgelegt werden.
Die Werte der Eigenschaften werden nach Zeitstempeln der Batches sortiert und gruppiert, d.h. die durch Daten ausgelösten Ereignisse und Warnungen für alle Eigenschaften, die mit demselben Zeitstempel aktualisiert wurden, werden zusammen ausgelöst. Anschließend werden Multi-Ereignis-Abonnements, die für einige oder alle diese Ereignisse registriert wurden, nur einmal pro Zeitstempel ausgeführt, wobei alle übereinstimmenden Ereignisse im Parameter events übergeben werden.
|
|
Vermeiden Sie beim Schreiben von benutzerdefinierten Diensten das Generieren von Code, der gleichzeitig dieselbe Eigenschaft einer gegebenen Entität ändern kann. Sie können beispielsweise einen Eigenschaftswert nicht gleichzeitig vergrößern oder verkleinern, da dies zu unvorhersehbaren Eigenschaftswerten führen kann. Ebenso ist das Vergrößern von Eigenschaften, damit sie wie Leistungsindikatoren in Abonnements agieren, eine häufige Fehlanwendung, die zu Ungenauigkeit führt.
|
|
Wenn das Datenänderungsereignis unter bestimmten Umständen nicht ausgelöst wird, wird der Wert-Stream-Eintrag evtl. nicht protokolliert, aber der festgelegte Eigenschaftswert wird beibehalten. Es ist möglich, dass Eigenschaften für eine Entität festgelegt werden, aber der entsprechende Wert-Stream-Schreibvorgang gelöscht wird, weil die Warteschlange mit diesen Schreibvorgängen voll ist und nicht in die Datenbank geleert werden kann. Dies kann auftreten, wenn das Volumen der eingehenden Schreibvorgänge größer ist als die konfigurierte Geschwindigkeit, in der die Warteschlange geleert wird. Dies kann in platform-settings.json pro Persistenzanbieter optimiert werden. Der Verlust der Verbindung zwischen ThingWorx und Datenbank kann auch dazu führen, dass die Warteschlange gesichert und nicht schnell geleert wird.
|
Option
|
Beschreibung
|
||
---|---|---|---|
Remote-Eigenschaftsname
|
Der Name der Eigenschaft am Edge.
|
||
Cache-Methode
|
Die Cache-Methode bietet die folgenden Möglichkeiten zum Lesen der gebundenen Edge-Eigenschaftswerte.
• Aus Server-Cache lesen verhindert Serveranforderungen an den Edge-Eigenschaftswert. Es wird nur der Wert vom Server abgerufen. Alle Aktualisierungen am auf dem Server zwischengespeicherten Edge-Eigenschaftswert sind abhängig vom Datenänderungstyp und von der Scanrate (d.h. Wert-Push-Definition der Edge-Eigenschaft) der Edge-Eigenschaft. Ohne die richtigen Einstellungen der Edge-Eigenschaft ist es möglich, dass der Server nie den Edge-Eigenschaftswert erhält und nur den Standardwert der Servereigenschaft zurückgibt. Wenn der Datenänderungstyp der Edge-Eigenschaft, an die Sie eine Bindung durchführen, ALWAYS oder VALUE ist, entspricht der Cache-Typ standardmäßig dieser Einstellung.
• Bei jedem Lesevorgang von Remote abgerufen ruft den Edge-Eigenschaftswert vom Edge für jede Anforderung ab. Bei dieser Option findet keine Zwischenspeicherung statt. Wenn der Datenänderungstyp der Edge-Eigenschaft, an die Sie eine Bindung durchführen, NEVER ist, entspricht der Cache-Typ standardmäßig dieser Einstellung.
• Für bestimmte Zeit zwischengespeichert steuert die Häufigkeit von Anforderungen an die Edge-Eigenschaft. Nach der ersten Anforderung greift der Server auf die Edge-Eigenschaft zu, um den Wert abzurufen, und stellt für die definierte Anzahl von Sekunden keine weitere Anforderung an die Edge-Eigenschaft. Beachten Sie, dass die Edge-Eigenschaft während dieser Zeit den Serverwert (über Push) aktualisieren kann.
|
||
Cache-Intervall
|
Die Zeitspanne (in Sekunden), für die der Server den Edge-Eigenschaftswert zwischenspeichert, bevor eine Anforderung des Eigenschaftswerts diesen vom Edge abruft. Der Wert wird immer bei der ersten Anforderung vom Edge abgerufen.
|
||
Starttyp
|
Gibt den Wert an, der zum Initialisieren einer remote gebundenen Eigenschaft verwendet wird, wenn das zugehörige Ding gestartet oder neu gestartet wird. Dieser initialisierte Wert löst kein Eigenschaftsänderungsereignis aus.
• Standardwert verwenden – Legt den Anfangswert der Eigenschaft auf den angegebenen Standardwert fest, trotz des Edge-seitigen Wertes. Wenn die Eigenschaft persistent gemacht wird, wird der anfängliche Wert auf den letzten Wert festgelegt, der in der Datenbank persistent gemacht wurde.
• Edge-Wert lesen – Fragt den aktuellen Wert vom Edge ab, sodass der Wert auf dem Server immer synchron mit dem Edge-Wert ist, selbst wenn das Ding auf dem Server neu gestartet wird.
|
||
Push-Typ
|
Push-Typ gilt nur für Edge-optimierte Dingeigenschaften. Diese Komponenten können ihre Wertänderungen mit einem Push an den Server übertragen. Sie können diese Funktion mit der Servereigenschaftsbindung konfigurieren.
• Push basierend auf Wertänderung – Sie können einen Schwellenwert für eine Wertänderung konfigurieren. Wenn Sie diese Einstellung verwenden, können Sie auch den Push-Schwellenwert festlegen, bei dem es sich um eine Totzone handelt, die überschritten werden muss, bevor ein neuer Wert vom Edge an den Server übergeben wird.
• Keine Push-Übertragung
• Immer Push-Übertragung
|
||
Push-Schwellenwert
|
Diese Option ist verfügbar, wenn Push-Typ auf Push basierend auf Wertänderung festgelegt ist. Sie gibt den Bereich (plus oder minus) um den Edge-Eigenschaftswert an, damit der Eigenschaftswert-Push erfolgt. Der Eigenschaftswert muss sich um mehr als den angegebenen Wert ändern.
|
||
Wenn getrennt
|
Gibt an, wie die Bindung des Remote-Eigenschaftswerts verarbeitet werden soll, wenn die Verbindung zum Remote-Ding vorübergehend verloren geht.
• Werte ignorieren, die sich ändern, wenn getrennt.
• Alle Änderungen in einem einzelnen zuletzt geänderten Wert kombinieren – Sendet den letzten geänderten Wert, wenn die Verbindung wiederhergestellt wird.
|
||
Timeout
|
Das Timeout für Aufrufe von Remote-Dingen, während eine Eigenschaft gelesen oder geschrieben wird.
• Systemstandard verwenden – Die Standardeinstellung sind 30 Sekunden.
• Benutzerdefiniertes Timeout. Fügen Sie dies zu Timeout-Intervall (s) hinzu.
|