|
如果本地事物和远程事物具有名称相同的属性,并且另一个属性绑定到远程属性设置,则远程属性还会设置本地属性值。
|
|
有关设置属性绑定的信息,无论是本地还是远程,请参阅管理属性绑定。
|
选项
|
说明
|
---|---|
UpdatePropertyValues
|
接受由多个行组成的单值信息表参数。每一行都包含属性名称、值和质量,并带有更新时间戳。属性值不能设置为空。
默认情况下,会分别更新每个属性的值。要按时间戳而非属性对值进行排序和分组,应在 platform-settings.json 的 BasicSettings 部分将 GroupPropertyValuesByTime 设置设定为 true。
将上述设置设定为 true 后,所有以相同时间戳更新的属性,其数据触发事件和警报将同时触发。因此,为部分或全部上述事件注册的多事件订阅将仅针对每个时间戳执行一次,且会在事件参数中传递匹配事件。
|
UpdatePropertyValuesBatched
|
接受由多个行组成的单批次信息表参数。每一行都包含一批属性值和更新时间戳。
batch 字段值为由多个行组成的信息表。每一行都包含属性名称、值和质量。属性值不能设置为空。
属性值按照批次的时间戳进行排序和分组,这意味着所有以相同时间戳更新的属性,其数据触发事件和警报将同时触发。因此,为部分或全部上述事件注册的多事件订阅将仅针对每个时间戳执行一次,且会在事件参数中传递所有匹配事件。
|
|
编写自定义服务时,请避免生成可同时修改指定实体同一属性的代码。例如,不要同时递增或递减属性值,因为这会产生不可预测的属性值。同样,在订阅中将递增属性作为计数器使用也是常见的误用情况,这将导致结果不准确。
|
|
如果在特定情况下无法触发数据更改事件,则不会记录值流条目,但会保留属性值设置。可以在实体上设置属性,但可能会因为队列写入已满且无法清空数据库而放弃相应的值流写入。如果在传入的写入量大于针对队列配置的清空速度时,则可能会发生这种情况。可根据每个持久化方案提供程序在 platform-settings.json 中对此进行调整。ThingWorx 与数据库之间断开连接还可能会导致队列以高性能方式备份而非空。
|
选项
|
说明
|
||
---|---|---|---|
“远程属性名称”
|
属性存在于 Edge 时的名称。
|
||
“缓存方法”
|
缓存方法可提供以下方法来读取绑定的 Edge 属性值:
• “从服务器缓存读取”会禁止对 Edge 属性值的服务器请求。该选项只会从服务器检索值。对服务器缓存的 Edge 属性值的所有更新取决于 Edge 属性的“数据更改类型”和扫描速率 (Edge 属性值推送定义)。如果未正确设置 Edge 属性,则服务器可能会没有 Edge 属性值,并且只能返回服务器属性的默认值。如果绑定的 Edge 属性的“数据更改类型”为“始终”或“值”,则缓存类型默认使用此设置。
• “每次读取时从远程获取”将针对每个请求从 Edge 检索 Edge 属性值。此选项没有缓存。如果绑定的 Edge 属性的“数据更改类型”为“从不”,则缓存类型默认使用此设置。
• “缓存保持特定时间”用于控制 Edge 属性的请求频率。在第一次请求后,服务器会访问 Edge 属性以获取其值,且在定义的秒数之内不会对 Edge 属性进行再次请求。请注意,Edge 属性可能会在此时间内更新服务器上的值 (通过推送)。
|
||
“缓存间隔”
|
服务器缓存 Edge 属性值将持续的时间段 (以秒为单位),在经过此时间间隔后,属性值请求才能从 Egde 中对该值进行检索。在第一次请求时,系统始终从 Edge 中检索该值。
|
||
“开始类型”
|
指定在远程绑定属性的事物开始或重新启动时用于对该远程绑定属性进行初始化的值。此初始化的值不会触发属性更改事件。
• “使用默认值”- 将属性的初始值设置为指定的默认值,忽略 Edge 侧值。如果该属性持久保存,则初始值将被设置为最后一个持久保存到数据库的值。
• “读取 Edge 值”- 查询 Edge 的当前值,以便服务器上的值始终与 Edge 上的值同步,即使事物在服务器上重新启动也是如此。
|
||
“推送类型”
|
“推送类型”仅适用于 Edge 增强事物属性。这些组件可将其值更改推送到服务器。您可以使用服务器属性绑定来配置此功能。
• “基于值更改推送”:您可以配置值更改阈值。使用此设置时,还可以设置“推送阈值”的值,该值是一个死区,必须超过该死区才能将新值从 Edge 推送到服务器。
• “从不推送”
• “始终推送”
|
||
“推送阈值”
|
当“推送类型”设置为“基于值更改推送”时,此选项才可用。该选项可指定发生属性值推送时 Edge 属性值的范围 (正或负)。属性值的变化必须大于指定值。
|
||
“断开连接时”
|
指定远程事物连接暂时丢失时应如何处理远程属性值绑定。
• 断开连接时“忽略有改动的值”。
• “将所有的更改合并为单个上次更改值”- 当连接恢复时,发送上次更改值。
|
||
“超时”
|
执行属性读/写操作期间调用远程事物所用的超时时间。
• “使用系统默认设置”- 默认值为 30 秒。
• “自定义超时”。添加至“超时间隔 (秒)”。
|