远程访问子系统
RemoteAccessSubsystemThingWorx Remote Access Extension (RAE) 一起安装,提供支持 CreateRunUpdateDelete 操作的远程会话。子系统会在远程会话的生命周期内将远程会话持久保留在 ThingWorx 数据存储中。远程会话完成后 (TERMINATED),会将其从持久化存储中移除。
* 
虽然远程会话的数据存储可以扩展至 100K 条记录而不会造成任何问题,但 Axeda Global Access Server 的远程会话数量应远低于 100K,通常应为 1000 或 2000 个会话。
子系统具有以下配置设置:
Maximum Number of Sessions to Return from Data Storage 用于指定:对于远程会话请求,可持久化存储的远程会话的最大数目。默认值为 500 个会话。
Timeout to indicate that the RemoteAccessClient is not installed locally 用于指定:在生成消息说明 ThingWorx Remote Access Client (RAC) 未在用户的计算机上安装之前,等待的毫秒数。
Maximum Session Duration (in hours) 用于指定: 远程会话可保持活动状态的最大小时数。默认值为 24 小时,最小值为 1 小时,最大值为 240 小时。
Inactive Session Timeout (in minutes) 用于指定: 远程会话在超时之前允许保持非活动状态的分钟数。默认值为 15 分钟,最小值为 1 分钟,最大值为 60分钟。
以下是子系统的配置屏幕:
可以编辑子系统配置。启动 ThingWorx Platform 时,系统会自动启动子系统。
* 
如果调用方尝试在 ThingWorx ComposerSetConfigurationTable 服务指定的最小值和最大值范围以外设置值,则 RemoteAccessSubsystem 将抛出异常。
子系统提供以下服务用于清除旧会话和结束非活动状态的会话:
服务
说明
必需操作
CleanupOldSessions
通过将状况更新为 CLOSE_REQUESTED.,清除所有已超过最大会话持续时间的会话
确定 expirationTime (毫秒)。
查找所有 createdTime 字段小于或等于 expirationTime 的远程会话。
对于每个返回的会话,将状况设置为 CLOSE_REQUESTED,将 terminationCause 设置为 "Remote session close was requested due to max session duration of %s hours",然后更新会话。
TerminateInactiveSessions
结束所有非活动状态的会话并将状况设置为 TERMINATED
确定 inactiveTime (毫秒)。
查找所有 lastActivityTime 字段小于或等于 inactiveTime 的远程会话。
对于每个返回的会话,将状况设置为 TERMINATED,将 terminationCause 设置为 "Remote session was terminated due to session inactive timeout of %s minutes"。然后,更新会话。
* 
由于状况为 TERMINATED,因此,会话将从持久化存储中移除,并从子系统中移除。