遠端存取子系統
ThingWorx Remote Access Extension (RAE) 一起安裝,RemoteAccessSubsystem 可為遠端會話的 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 (以毫秒計)。
以小於或等於 expirationTimecreatedTime 欄位值尋找所有遠端工作階段。
針對傳回的每個工作階段,將狀況設定為 CLOSE_REQUESTED,而將 terminationCause 設定為「由於達到最長工作階段持續時間 % s 小時,請求關閉遠端工作階段」,然後更新工作階段。
TerminateInactiveSessions
結束任何非使用中工作階段,然後將狀況設定為 TERMINATED
確定 inactiveTime (以毫秒計)。
以小於或等於 inactiveTimelastActivityTime 欄位值尋找所有遠端工作階段。
針對傳回的每個工作階段,將狀況設定為 TERMINATED,而將 terminationCause 設定為「遠端工作階段因工作階段逾時 % s 分鐘而終止」。然後,更新會話。
* 
由於狀況為 TERMINATED,因此會將工作階段從持續性與子系統中移除。