簡體   English   中英

MATLAB:驗證到AWS的SSH隧道是否打開。

[英]MATLAB: Verify if a SSH tunnel to AWS is open.

我正在使用MATLAB連接到AWS托管的數據庫(使用數據庫工具箱)。 為此,我提供數據庫的URL作為本地端口,並創建到AWS主機的SSH隧道。

問題是需要創建此隧道才能運行代碼。 如果不是,則不會生成任何錯誤消息,但是MATLAB將掛起並需要終止。 我想將此代碼部署給無法丟失此隧道的用戶。

我的問題是:有沒有一種方法可以檢查MATLAB中的本地端口是否打開? 我如何檢查隧道是否已建立?

由於您正在使用數據庫工具箱,因此您可能需要使用logintimeout函數。 如文檔所述:

注意如果未為logintimeout指定值,並且MATLAB會話無法建立數據庫連接,則MATLAB會話可能會凍結。

然后將代碼包裝在try / catch塊中

我不熟悉Matlab的TCP對象,但是有一個system命令可以執行程序,並返回其退出代碼(請參閱其文檔) 因此,可能會做的工作是嘗試連接到本地端口的小型程序或腳本(根據需要可移植)。

或者,小程序/腳本實際上可以打開 (或重新打開)隧道,並在成功時返回0 (這可能會增加Matlab如何處理派生過程的問題,我不知道它是如何處理的。)

可能有某種方法可以檢查是否打開,如果沒有則通過Matlab進行重新打開 ,但是我不知道。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM