內網穿透的應用-告別“現場救火”!用 cpolar遠程調試讓內網故障排查進入“云時代”

文章目錄

    • 前言
        • **常見困境與解決方案**
        • **實際應用價值**
    • 1. Remote JVM Debug
    • 2. 系統要求與環境準備
      • 2.1 服務器環境
      • 2.2 本地開發環境
    • 3. 內網服務器準備及開始
      • 3.1 安裝cpolar配置支持遠程ssh登錄
        • 3.1.1 什么是cpolar?
        • 3.1.2 安裝cpolar
        • 3.1.3 注冊及配置cpolar系統服務
        • 3.1.4 登錄cpolar web ui 管理界面配置ssh端口穿透
          • 3.1.4.1 放行9200端口
          • 3.1.4.2 訪問cpolar web ui管理界面
          • 3.1.4.3 保留固定TCP公網地址
          • 3.1.4.4 啟用ssh隧道,配置固定tcp地址
          • 3.1.4.5 使用固定的tcp地址進行遠程ssh登錄
      • 3.2 安裝JDK
      • 3.3 上傳打包好的Jar文件至服務器
        • 3.3.1 打包springboot項目
        • 3.3.2 上傳至服務器
    • 4. 啟動 JAR 文件并配置遠程調試
      • 4.1 啟動 JAR 文件
      • 4.2 cpolar隧道配置
        • 4.2.1 http(8080端口)穿透
        • 4.2.2 調試端口(5005端口)穿透
          • 4.2.2.1 保留固定tcp地址
          • 4.2.2.2 創建新隧道
    • 5.IDEA遠程Debug調試內網項目
      • 5.1 idea配置remote jvm debug
      • 5.2 啟動及調試
    • 6.可能出現的問題
      • 6.1 訪問頁面出現404的情況是怎么回事?
    • 7.總結
    • 項目源碼
        • cpolar 與IDEA的遠程JVM調試技術組合,本質是為內網服務打造了一座“數字橋”。它解決了傳統運維場景中最核心的矛盾——物理隔離與實時響應、人工成本與效率提升。無論是深夜救場的核心故障,還是日常代碼邏輯驗證,這種方案都展現了極高的實用性。對于依賴分布式架構的企業而言,這不僅是工具鏈的補充,更是構建“遠程即在場”DevOps文化的基石。尤其在混合辦公常態化的今天,它讓開發者能隨時隨地掌控服務狀態,真正實現了“故障無邊界”的運維愿景——無需現場救火,一切盡在指尖掌控。

前言

深夜收到緊急通知:“測試環境的核心服務又掛了!”——如果該服務部署在嚴格隔離的內網,這樣的場景往往意味著開發者要在凌晨驅車趕往辦公室。但借助cpolar 的內網穿透技術與IDEA的遠程調試功能,這種低效模式已被徹底打破:即使身處千里之外,也能像操作本地項目一樣完成JAR包異常分析。

常見困境與解決方案
  • 難題1:“黑盒”環境下的定位難
    當無法直接訪問內網服務時,傳統的日志查看或運維協助往往信息滯后。cpolar通過端口映射將調試通道“拉到身邊”,讓開發者能實時追蹤變量值和堆棧軌跡。
  • 難題2:跨地域協作低效
    團隊成員分散在不同城市?遠程IDE連接+穿透隧道的組合,使多人協同診斷成為可能——資深工程師可通過共享會話指導新人快速上手復雜問題。
  • 難題3:安全合規與操作便捷性平衡
    cpolar支持按需創建/銷毀通道,并提供訪問權限控制(如IP白名單),既保障數據安全又避免長期暴露端口風險。
實際應用價值
  • 成本優化:減少差旅費用及人工等待時間;
  • 效率躍升:從發現故障到修復平均耗時縮短60%以上;
  • 知識沉淀:通過遠程調試記錄,形成標準化問題處理手冊。

本文使用的示例項目已在GitHub開源,您可以直接獲取完整代碼進行學習和實踐:

  • GitHub倉庫:https://github.com/TanChengBin/springboot-debug-test
  • 項目特點:基于Spring Boot的遠程調試測試項目,包含正常接口和異常接口,便于測試各種調試場景

1. Remote JVM Debug

Remote JVM Debug(遠程JVM調試)是一種允許開發人員通過調試工具(如 IntelliJ IDEA)連接到運行在遠程服務器上的Java應用程序并進行調試的技術。這個過程通常涉及通過網絡連接到遠程JVM實例,并允許開發者在不直接訪問物理機器的情況下查看、修改代碼狀態,診斷和修復問題。

2. 系統要求與環境準備

2.1 服務器環境

  • 內網服務器操作系統:Windows 或 Linux。
  • JDK 版本:確保服務器上安裝了正確版本的 JDK,支持遠程調試。
  • cpolar 安裝:需要在內網服務器上安裝 cpolar 客戶端,用于穿透遠程登錄、調試端口及HTTP請求。

2.2 本地開發環境

  • IDEA:本地開發機器需要安裝 IntelliJ IDEA。
  • JDK:本地開發機器需要安裝 JDK(版本與遠程服務器相同)。

3. 內網服務器準備及開始

由于大部分項目基本部署在Linux服務器中,因為Linux的性能更優,占用更低。所以本文采用的模擬內網服務器為Linux的CentOS7系統。

3.1 安裝cpolar配置支持遠程ssh登錄

此步驟需提前在內網服務器中操作,以支持在家遠程登錄公司測試環境中的內網服務器

3.1.1 什么是cpolar?
  • cpolar 是一款內網穿透工具,可以將你在局域網內運行的服務(如本地 Web 服務器、SSH、遠程桌面等)通過一條安全加密的中間隧道映射至公網,讓外部設備無需配置路由器即可訪問。
  • 廣泛支持 Windows、macOS、Linux、樹莓派、群暉 NAS 等平臺,并提供一鍵安裝腳本方便部署。
3.1.2 安裝cpolar

首先,我們需要先安裝curl:

sudo yum install curl

接下來下載cpolar,一條命令完成安裝

curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash

image-20250731104103027

測試 cpolar版本以確保安裝

cploar version

image-20250731104439284

3.1.3 注冊及配置cpolar系統服務

官網地址:https://www.cpolar.com

進入cpolar官網,點擊免費注冊按鈕進行注冊一個賬號

image-20250731105101940

向系統添加及啟動cpolar服務

#添加cpolar服務
sudo systemctl enable cpolar#啟動cpolar服務
sudo systemctl start cpolar

image-20250731113335779

查看服務狀態

sudo systemctl status cpolar

image-20250731113641757

3.1.4 登錄cpolar web ui 管理界面配置ssh端口穿透
3.1.4.1 放行9200端口

在訪問web頁面前,需要先檢查系統防火墻是否放行9200端口,避免訪問不了

systemctl status firewalld

image-20250731114230860

有兩種方式可以實現訪問,一種是放行該端口,另一種是直接關閉防火墻(不建議)

#放行 9200 端口  
#--zone=public:使用默認區域(通常是 public)
#--add-port=9200/tcp:添加 TCP 協議的 9200 端口
#--permanent:永久生效(不加此參數則是臨時規則,重啟失效)
firewall-cmd --zone=public --add-port=9200/tcp --permanent#重載防火墻配置(及刷新配置使其生效)
firewall-cmd --reload

image-20250731114753297

驗證端口是否已放行

firewall-cmd --zone=public --query-port=9200/tcp

image-20250731114856489

輸出內容為yes則成功放行

3.1.4.2 訪問cpolar web ui管理界面

在訪問之前,不確定ip地址可以通過ifconfig命令查看服務器ip

ifconfig

image-20250731115241198

確定好ip地址后,在瀏覽器中訪問:

http://<此處應為您的IP>:9200  #如:http://192.168.184.133:9200

image-20250731115551451

將前面步驟注冊好的cpolar賬號登錄即可進入后臺頁面

image-20250731115828304

登錄成功同時,服務器也會后臺無感自動配置token,無需手動配置token

配置文件位置:/usr/local/etc/cpolar/cpolar.yml

cat /usr/local/etc/cpolar/cpolar.yml

image-20250731120348419

3.1.4.3 保留固定TCP公網地址

使用cpolar為其配置TCP地址,該地址為固定地址,不會隨機變化,方便后續ssh遠程登錄。

進入官網的預留頁面:https://dashboard.cpolar.com/reserved

image-20250731134024714

列表中顯示了一條已保留的TCP地址記錄:

  • 地區:顯示為China Top
  • 地址:顯示為16.tcp.cpolar.top:14290

注:地址每個賬號的都不同,請以自己保留生成的為主

3.1.4.4 啟用ssh隧道,配置固定tcp地址

點擊左側菜單欄的隧道管理,展開進入隧道列表頁面,頁面下默認會有 2 個隧道:

  • ssh隧道,指向22端口,tcp協議
  • website隧道,指向8080端口,http協議(http協議默認會生成2個公網地址,一個是http,另一個https,免去配置ssl證書的繁瑣步驟)

image-20250731121517683

接著點擊ssh隧道的編輯按鈕,進入編輯頁面,修改成固定tcp地址,如圖所示:

image-20250731134321846

3.1.4.5 使用固定的tcp地址進行遠程ssh登錄

ssh遠程工具可以使用MobaXtermXshell或者FinalShell都可以,這里采用FinalShell進行遠程登錄演示

image-20250731135717956

接下來,雙擊創建的ssh連接,如出現提示,點擊接受并保存即可,即可連接到內網服務器

image-20250731140155208

3.2 安裝JDK

本文采用jdk17作為演示

#下載jdk17軟件包
wget https://download.oracle.com/java/17/archive/jdk-17_linux-x64_bin.rpm#安裝jdk17
sudo rpm -ivh jdk-17_linux-x64_bin.rpm

image-20250731140803238

安裝完成后,查看版本,確認安裝

java -version

image-20250731141004010

3.3 上傳打包好的Jar文件至服務器

該項目為簡單模擬測試調試使用項目,共寫3個簡單接口:

  • 🟢正常接口:/api/normal/info:獲取應用程序的基本信息,包括名稱、版本、作者等
  • 🔴異常接口:/api/bug/null-pointer:故意拋出NullPointerException,用于調試異常處理
  • 🟡阻塞接口:/api/bug/infinite-loop:進入無限循環,模擬線程阻塞場景
3.3.1 打包springboot項目

idea中側邊欄選擇Maven選項,然后如圖操作進行構建打包jar文件:image-20250731142117659

3.3.2 上傳至服務器

依次步驟打開找到jar文件springboot-debug-test-1.0.0.jar

image-20250731143204600

將jar文件直接拖動至finalshell空白處即可上傳

注意:一定要使用 root 用戶登錄,否則上傳可能失敗(或者確保當前用戶對目標目錄具有寫權限)。

如果使用普通用戶登錄 FinalShell,可通過 chmodchown 命令賦予目標目錄寫權限。

image-20250731143923122

4. 啟動 JAR 文件并配置遠程調試

4.1 啟動 JAR 文件

使用 java -jar 命令啟動你需要調試的 JAR 文件,并開啟遠程調試。需要在啟動命令中指定 JVM 調試參數:

java -jar -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5005 springboot-debug-test-1.0.0.jar

5005 為遠程調試的端口號。

springboot-debug-test-1.0.0.jar 是要調試的 JAR 文件名稱。

image-20250731144930989

項目已經成功啟動,端口5005被監聽,后臺該jar文件項目在端口8080(http)上運行。

4.2 cpolar隧道配置

4.2.1 http(8080端口)穿透

訪問cpolar web ui管理界面(忘記可看前面3.1.4.2小節),進入到隧道列表,名稱為website的隧道,點擊編輯,可以看到如下信息:

  • 隧道名稱:website
  • 協議:http
  • 本地地址:8080

這些信息正是后臺項目8080端口所需要的,所以不需要進行修改,默認創建好的隧道直接可以使用。

image-20250731152809974

接著左側菜單欄選擇【狀態】>【在線隧道列表】,可以看到website隧道有兩個公網地址,http協議(http協議默認會生成2個公網地址,一個是http,另一個https,免去配置ssl證書的繁瑣步驟)

image-20250731153147189

直接選擇一個至瀏覽器測試,這里選擇http(注:每個用戶的公網地址都不相同)

由于后臺項目提到的接口地址后綴為/api/normal/info,所以正確拼接地址應為:

<您的公網地址>/api/normal/info   #如:http://5c19bf20.r1.cpolar.top/api/normal/info

image-20250731153501370

接口正常返回了api接口信息,穿透成功!

4.2.2 調試端口(5005端口)穿透
4.2.2.1 保留固定tcp地址

選擇將5005端口穿透設置為固定的tcp地址是為了方便后續多次調試,tcp地址不會進行變化,也可以不進行此步驟操作。

進入官網的預留頁面:https://dashboard.cpolar.com/reserved

  • 地區當前選擇的是:China Top
  • 地址信息為:3.tcp.cpolar.top:12718

記住新創建的地址信息(注意:每個用戶創建的地址信息都有所不同,請注意個人的地址信息

image-20250731154744284

4.2.2.2 創建新隧道

進入創建隧道列表,填寫好對應信息,如下圖:

  • 協議:tcp
  • 本地地址為:5005
  • 端口類型:固定tcp端口
  • 預留tcp地址:填寫您預留固定的tcp地址

image-20250731155540322

5.IDEA遠程Debug調試內網項目

5.1 idea配置remote jvm debug

點擊啟動按鈕左邊的選項卡,然后在選項卡中點擊Edit Configurations進入Run/Debug Configurations頁面

image-20250731161024435

依次點擊左上角【+】號按鈕,下滑選擇【Remote JVM Debug】選項,點擊進入。

image-20250731161426748

填寫主機以及端口信息,具體參考如下圖:

  • Name:自定義名字(如:Remote Debug)
  • Host:填寫固定的tcp地址去除端口部分(如:3.tcp.cpolar.top)
  • Port:填寫固定的tcp地址端口部分(如:12718)

image-20250731162258621

5.2 啟動及調試

點擊右上角的小蟲子圖標即可啟動調試,啟動調試后,控制臺會出現類似Connected to the target VM, address: '3.tcp.cpolar.top:12718', transport: 'socket'的信息,即代表啟動成功

image-20250731163133444

來到BugController控制器,里面有一個異常接口api/bug/null-pointer,代碼如下:

    /*** 空指針異常接口* * 該接口會故意拋出NullPointerException* 用于測試空指針異常的調試場景* * @return 永遠不會執行到這里,因為會拋出異常*/@GetMapping("/null-pointer")public String nullPointerException() {//1.此位置故意設置nullString字符串為nullString nullString = null;String now = LocalDateTime.now().format(FORMATTER);System.out.println("空指針異常接口被調用,準備拋出異常,時間:" + now);//2.待接口返回時執行nullString的toString方法時就會拋出NullPointerException異常return nullString.toString();}

切換到瀏覽器,然后請求8080端口的穿透地址+異常接口地址進行請求,如:

<您的8080端口穿透地址>/api/bug/null-pointer  #如:http://5c19bf20.r1.cpolar.top/api/bug/null-pointer

image-20250731164414958

接著在String nullString = null;代碼段左邊打上斷點調試,如下圖:

image-20250731163940881

再次請求一次該鏈接http://5c19bf20.r1.cpolar.top/api/bug/null-pointer進行發送http請求,可以看到后端idea中已經進去斷點調試了

image-20250731164557670

進入下一步驟,查看到nullString變量值確實為null

image-20250731164837509

多跳幾個步驟,進入源碼后可以確認已拋出空指針異常,提示 nullString 為 null,無法調用其方法。
image-20250731165856012

在finalShell終端1界面中也可以看到,控制臺輸出的日志出現了NullPointerException異常

image-20250731170058315

通過以上的配置,這樣您就可以在家中或者外出無法及時回到公司時,也能很輕松的調試公司中內網服務器里部署的測試環境項目啦!

6.可能出現的問題

6.1 訪問頁面出現404的情況是怎么回事?

訪問出現404:
image-20250731170927056

可以發現,接口路徑中少了全局上下文路徑/api ,補上就可以訪問啦!

image-20250731171113996

7.總結

通過本教程,我們成功實現了使用 Cpolar 結合 Remote JVM Debug 技術,在本地 IDE 環境中調試部署在公司內網中的 Java 服務。整體流程包括:

  • 安裝并配置 Cpolar,打通從公網訪問內網的通道;
  • 啟用 JVM 的遠程調試模式,開放調試端口;
  • 使用 IntelliJ IDEA 配置 Debug 遠程連接;
  • 最終實現對遠程服務的斷點調試與問題排查。

本方案適用于以下典型場景:

  • 公司測試環境無法直接從公網訪問;
  • 無法通過 VPN 連通或 VPN 配置復雜;
  • 出現遠程服務異常但又難以復現時,進行現場調試。

在實際使用中應注意:

  • 遠程調試存在安全風險,建議僅限于測試環境,并設置好訪問權限;
  • cpolar 每次生成的公網地址可能會變化,建議使用固定子域名(需高級用戶)
  • 遠程調試應避免在生產環境開啟,以免暴露調試端口。

通過這種方式,極大提升了遠程問題定位效率,也為遠程辦公/故障應急提供了可靠手段。


項目源碼

本文中使用的示例項目已開源,歡迎訪問GitHub倉庫獲取完整代碼:

👉 https://github.com/TanChengBin/springboot-debug-test

如果您覺得這個項目對您有幫助,歡迎給項目點個Star??支持!

cpolar 與IDEA的遠程JVM調試技術組合,本質是為內網服務打造了一座“數字橋”。它解決了傳統運維場景中最核心的矛盾——物理隔離與實時響應、人工成本與效率提升。無論是深夜救場的核心故障,還是日常代碼邏輯驗證,這種方案都展現了極高的實用性。對于依賴分布式架構的企業而言,這不僅是工具鏈的補充,更是構建“遠程即在場”DevOps文化的基石。尤其在混合辦公常態化的今天,它讓開發者能隨時隨地掌控服務狀態,真正實現了“故障無邊界”的運維愿景——無需現場救火,一切盡在指尖掌控。

以上就是如何在本地使用Remote JVM Debug 進行內網服務器調試,并安裝cpolar內網穿透工具配置固定不變的TCP公網地址,實現隨時隨地遠程訪問的全過程,感謝您的觀看,有任何問題歡迎留言交流。

cpolar官網-安全的內網穿透工具 | 無需公網ip | 遠程訪問 | 搭建網站

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/93069.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/93069.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/93069.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Cherryusb UAC例程對接STM32內置ADC和PWM播放音樂和錄音(下)=>UAC+STM32 ADC+PWM實現錄音和播放

1. 程序基本框架整個程序框架, 與之前的一篇文章《Cherryusb UAC例程對接STM32內置ADC和DAC播放音樂和錄音(中)>UACSTM32 ADCDAC實現錄音和播放》基本一致, 只是這次將DAC替換成了PWM。因此這里不再贅述了。 2. audio_v1_mic_speaker_multichan_template.c的修改說明(略) 參…

1 JQ6500語音播報模塊詳解(STM32)

系列文章目錄 文章目錄系列文章目錄前言1 JQ6500簡介2 基本參數說明2.1 硬件參數2.2 模塊管腳說明3 控制方式3.1 通信格式3.2 通信指令4 硬件設計5 軟件設計5.1 main.c5.2 board_config5.2.1board_config.h5.2.2 board_config.c5.3 module_config5.3.1 module_config.h5.3.2 mo…

常用數據分析工具

Tableau丨Power BI丨FineBI丨SQL丨影刀丨Excel丨Python丨 參考視頻&#xff1a;【戴師兄】數據分析有哪些必學工具&#xff1f;2023最新版&#xff01;Tableau丨Power BI丨FineBI丨SQL丨影刀丨Excel丨Python丨課程教程自學攻略_嗶哩嗶哩_bilibili 文檔資料&#xff1a; 【戴師兄…

OBOO鷗柏丨智能會議平板教學查詢一體機交互式觸摸終端招標投標核心標底參數要求

整機參數要求&#xff1a;55寸/65寸/75寸/85-86寸/98寸/100寸/110寸/115寸智能會議平板教學觸控一體機/智慧黑板觸摸屏招標投標核心標底參數要求1、整機屏幕采用≥采用超高清原廠原包原裝工業LCD液晶屏面板&#xff1b;具有高色域&#xff0c;顯示動態視頻、web及3D動畫時&…

無人機在環保監測中的應用:低空經濟發展的智能監測與高效治理

一、行業背景與技術革新 隨著全球環境問題日益嚴峻&#xff0c;傳統環保監測手段已難以滿足現代環境管理的需求。固定監測站點建設成本高、覆蓋范圍有限&#xff0c;地面巡查效率低下且存在安全風險。在此背景下&#xff0c;無人機技術憑借其獨特的空間優勢和技術特性&#xff…

PO、BO、VO、DTO、POJO、DAO、DO基本概念

一、圖解二、相關概念 1、PO&#xff08;Persistant Object - 持久化對象&#xff09; 核心定位&#xff1a; 直接與數據庫表結構一一映射的對象&#xff0c;通常用于 ORM&#xff08;對象關系映射&#xff09;框架&#xff08;如 MyBatis、Hibernate&#xff09;中。 特點&…

todoList清單(HTML+CSS+JavaScript)

&#x1f30f;個人博客主頁&#xff1a; 前言&#xff1a; 前段時間學習了JavaScript&#xff0c;然后寫了一個todoList小項目&#xff0c;現在和大家分享一下我的清單以及如何實現的&#xff0c;希望對大家有所幫助 &#x1f525;&#x1f525;&#x1f525;文章專題&#xff…

Mac M1探索AnythingLLM+Ollama+知識庫問答

AnythingLLM內置 RAG、AI Agent、可視化/無代碼的 Agent 編排&#xff0c;支持多家模型與本地/云端向量庫&#xff0c;并提供多用戶與可嵌入的聊天組件&#xff0c;用來快速驗證“知識 模型 工具”拼成的 AI 應用。 1 AnythingLLM、Ollama準備 1&#xff09;AnythingLLM 打…

【 Navicat Premium 17 完全圖形化新手指南(從零開始)】

Navicat Premium 17 完全圖形化新手指南&#xff08;從零開始&#xff09; 一、準備階段&#xff1a;清理現有環境 1. 刪除已創建的測試數據庫&#xff08;如需重新開始&#xff09;打開Navicat Premium 17 雙擊桌面圖標啟動程序在左側連接面板中找到你的MySQL連接&#xff08;…

Web學習筆記5

Javascript概述1、JS簡介JS是運行在瀏覽器的腳本編程語言&#xff0c;最初用于Web表單的校驗。現在的作用主要有三個&#xff1a;網頁特效、表單驗證、數據交互JS由三部分組成&#xff0c;分別是ECMAscript、DOM、BOM&#xff0c;其中ECMAscript規定了JS的基本語法和規則&#…

部署一個開源的證件照系統

以下數據來自官方網站,記錄下來,方便自己 項目簡介 &#x1f680; 謝謝你對我們的工作感興趣。您可能還想查看我們在圖像領域的其他成果&#xff0c;歡迎來信:zeyi.linswanhub.co. HivisionIDPhoto 旨在開發一種實用、系統性的證件照智能制作算法。 它利用一套完善的AI模型工作…

Linux客戶端利用MinIO對服務器數據進行同步

接上篇 Windows客戶端利用MinIO對服務器數據進行同步 本篇為Linux下 操作&#xff0c;先看下我本地的系統版本 所以我這里下載的話&#xff0c;是AMD64 文檔在這 因為我這里只是需要用到客戶端&#xff0c;獲取數據而已&#xff0c;所以我只需要下載個MC工具用來數據獲取就可以…

Docker 中部署 MySQL 5.7 并遠程連接 Navicat 的完整指南

個人名片 &#x1f393;作者簡介&#xff1a;java領域優質創作者 &#x1f310;個人主頁&#xff1a;碼農阿豪 &#x1f4de;工作室&#xff1a;新空間代碼工作室&#xff08;提供各種軟件服務&#xff09; &#x1f48c;個人郵箱&#xff1a;[2435024119qq.com] &#x1f4f1…

自己動手造個球平衡機器人

你是否曾對那些能夠精妙地保持平衡的機器設備感到好奇&#xff1f; 從無人機到獨輪平衡車&#xff0c;背后都蘊藏著復雜的控制系統。 今天&#xff0c;我們來介紹一個充滿挑戰與樂趣的項目——制作一個球平衡機器人。這不僅是一個酷炫的擺件&#xff0c;更是一次深入學習機器…

21.Linux HTTPS服務

Linux : HTTPS服務協議傳輸方式端口安全性HTTP明文傳輸80無加密&#xff0c;可被竊聽HTTPS加密傳輸443HTTP SSL/TLS 數據加密&#xff08;防竊聽&#xff09;身份認證&#xff08;防偽裝&#xff09;完整性校驗&#xff08;防篡改&#xff09;OpenSSL 證書操作核心命令命令選項…

SqlSugar 跨方法 操作臨時表

.net項目中時長會有用到臨時表的操作結果如下所示但是在SqlSugar中可能因為會話問題導致臨時表訪問受限 搜索到的方式var conn (SqlConnection)sugarClient.Ado.Connection;if (conn.State ! System.Data.ConnectionState.Open) {conn.Open();}using (var cmd new SqlCommand…

怎么用飛算javaAI實現視頻逐幀截圖并保存

相信很多朋友都遇到過這樣的需求&#xff1a;想從視頻中截取特定幀作為素材&#xff0c;卻苦于沒有簡單易用的工具&#xff0c;要么操作復雜難以精準定位&#xff0c;要么導出的圖片質量不佳。市面上的視頻處理軟件要么功能冗余&#xff0c;要么需要付費才能使用逐幀截取功能&a…

【2】Transformers快速入門:統計語言模型是啥?

一句話看懂統計語言模型核心任務&#xff1a;教電腦判斷一句話 “像不像人話” &#xff08;比如“我愛吃蘋果”? vs “蘋果吃愛我”?&#xff09;1. 早期&#xff1a;死磕語法規則 → 失敗&#xff01; 科學家思路&#xff08;1970年前&#xff09;&#xff1a; 像語文老師一…

[激光原理與應用-230]:物理學主要分支、研究對象、衍生技術及職業方向解析

物理學作為自然科學的核心學科&#xff0c;其分支體系覆蓋從微觀粒子到宏觀宇宙的廣闊領域&#xff0c;并通過交叉融合衍生出眾多前沿技術。以下從經典與現代物理學分支、交叉學科、技術轉化及職業方向四個維度展開分析&#xff1a;一、經典物理學分支&#xff1a;宏觀世界的基…

北京JAVA基礎面試30天打卡08

RocketMQ、RabbitMQ與Kafka對比及常見問題解決方案 一、概述 消息隊列&#xff08;Message Queue, MQ&#xff09;是企業IT系統內部通信的核心手段&#xff0c;用于提升性能、實現系統解耦和流量削峰。它具有低耦合、可靠投遞、廣播、流量控制、最終一致性等功能&#xff0c;是…