前言
自從我用了正版的IntelliJ IDEA后,基本上都是與時俱進,出一個新版本就立馬更新,這也能能讓我體驗到最新最快的功能。
最近在閑逛Jetbrains的官網時,看到了最新的2021.3
EAP版本的放出。立馬下了試試。
而令我感到興奮的是,2021.3
版本竟然增加了雲端開發的一系列功能。
所謂雲端開發,就是指本地運行着一個輕客戶端。所有的代碼存儲,代碼編譯,代碼運行都是在遠端。本地只是作一個展示和編輯作用。
這個時代很多東西都雲端化了,有雲電腦,雲手機,雲游戲。我一直都期待有個雲IDE,雖然我知道vscode開源了並且有相應的雲平台。但是我說IntelliJ IDEA才是Java開發IDE的天花板,這個應該沒人反駁吧。
而這個EAP版本,就直接明示了以后IDEA既能作為本地IDE,又能作為輕客戶端連上雲端,利用雲端強大的處理力,加速你的代碼編譯,啟動速度。
而這個雲端,隨便指定一台服務器,就可以自動化初始化好,極其方便。
而此篇文章,就來一探究竟:這個idea雲端是如何玩的。
一
安裝好2021.3 EAP
版本后,在歡迎界面就多出一個Remote Development
選項:
點Connect via SSH
,就可以看到只要通過SSH方式就可以連上一個遠端服務器作為計算資源。和所有的SSH一樣,填入你相應必要的驗證方式,這里我是采用RSA私鑰的驗證方式:
點擊Check Connection and Continue
之后,后續所有的動作,都由IDEA自動完成。包括在你的服務器上裝上遠端的服務進程,初始化等事情。這個過程只能等一會。
這個過程我大概等了5分鍾左右。看到成功連接上遠程服務器之后,點開Project directory
就可以看到服務器上的文件目錄了,選擇一個作為你的工作目錄。
這時應該服務器上的遠端進行已經開啟了,我登上了服務器,查找了下idea的進程,可以發現遠端服務器上啟動着4個進程。
二
連上上之后進入主界面,我發現基本和本地的沒有任何區別。只是在右下角多了一個即時的上行和下行的速度指標。和一個ping值。玩過手游的童鞋應該都知道,ping值是一個什么概念。ping值越低,就代表延時越低。下圖可以看到,我本地和服務器的延遲是22ms,對這個值有點概念的童鞋,應該知道這個ping值基本上是感受不到延遲的。
接下來我們就感受下遠端編譯。
我創建了一個springboot的web項目,當然創建的代碼全部在遠端上面,本地只不過作為編輯界面。
運行mvn clean package
命令,要注意的是此時並不是在本地執行maven命令,已經是在遠端了,前提是遠端服務器已經裝了maven,並配置好了系統path。
整個過程和本地並無太大差別,運行結果耗時如下,這還是包括從中央倉庫上下載springboot相關依賴+編譯打包的時間。甚至於我都覺得比本地要來的快速。
順便說下,這里測試時,遠端服務器的配置是8核64G內存。
接下來我在demo工程上加了一個controller。直接運行這個項目。
運行很快速。配置的端口號在8989。
如果往常我們要訪問controller的話,就一定會訪問127.0.0.1:8989了,但是這個運行也是在遠端運行的。
我查看了遠端的進程和端口號,確實服務器上開啟了一個線程,端口號是8989
接下來用服務器的公網地址進行訪問,也是毫無問題。
甚至於debug也和本地的一模一樣,毫無違和感
這基本上都可以不用在測試環境上部署了,本地直接起,相當於部署測試服務器了。用的還不是本地資源。
別的服務調用過來,本地直接可以debug了。還不用開remote debug。
當然以上純屬個人說笑,測試環境部署流程還是需要的。這里只是為了說明,這種如同本地模式的debug的確比基於配置-Xrunjdwp
的remote debug好了不止一點點。
總結
整個體驗下來,可以這么說,操作模式完全和本地一模一樣,但是計算和存儲資源卻是在遠端。而且我在體驗的過程中,基本上沒有讓我感覺到卡頓的地方,如同本地般的絲滑流暢。
有些童鞋本地配置不高的,平時開幾個IDEA窗口就開始卡的,完全就可以拿公司高性能的服務器作為遠端。利用服務器的高性能作為計算資源。本地開個十幾個輕客戶端應該也不會有卡頓。不用換電腦,立馬解決idea卡頓問題的神操作了。
因為這個版本只是一個EAP版本,官方文檔也說了,可能在使用時中會有不穩定的異常出現。所以2021.3的正式版本,我個人還是很期待的。
可能在以后,無論是手機,還是pad,還是輕量級配置的電腦中。只要我們打開idea的輕客戶端,連上強大的雲服務器,無論是編譯,啟動,加載,都是異常的快。不會再出現,編譯花個20分鍾,啟動花個10分鍾這樣的事了。
我是鉑賽東,是一個開源作者和內容博主,熱愛生活和分享。如果你對我的內容感興趣,請轉發,點贊,然后關注我。