Docker 高級管理 -- 容器通信技術與數據持久化

目錄

第一節:容器通信技術

一:Docker 容器的網絡模式

1:Bridge模式

2:Host模式

3:Container模式

4:None模式

5:Overlay 模式

6:Macvlan 模式

7:自定義網絡模式

二:端口映射

關鍵對比

三:容器互聯

關鍵對比

四:容器間通信實現案例

1. 網絡創建選項

2. 容器通信實現步驟

3. 通信方式對比

第二節:數據持久化技術

一:Docker的數據管理

1. 數據卷核心概念

2. 數據卷核心作用

3. 數據卷操作命令

4. 數據卷類型對比

二:Docker數據管理注意事項

關鍵對比:數據卷類型選擇


第一節:容器通信技術

一:Docker 容器的網絡模式

? ? ? ? 當項目大規模使用 Docker 時,容器通信的問題也就產生了。要解決容器通信問題,必須先了解很多關于網絡的知識。Docker 的網絡模式非常豐富,可以滿足不同容器的通信要求,下表列出了這些網絡模式的主要信息。

網絡模式創建方式特點說明
host 模式--network host容器直接使用宿主機網絡棧,無獨立網絡命名空間,性能高但易端口沖突
container 模式--network container:<已有容器名或ID>新容器共享指定容器的網絡命名空間,適用于需要緊密耦合通信的容器組合
none 模式--network none容器僅有lo回環接口,無外部網絡連接,適合高安全性需求或手動配置網絡場景
bridge 模式默認模式,可通過-d bridge手動指定(通常省略)Docker默認模式,通過docker0虛擬網橋連接容器,有獨立IP,通過NAT訪問外網
Overlay 模式-d overlay用于Docker Swarm集群,基于VXLAN技術實現跨主機容器通信
macvlan 模式-d macvlan,需指定--subnet--gateway--o parent=<物理網卡>為容器分配唯一MAC地址,直接連接物理網絡接口,繞過docker0網橋,性能高
自定義網絡docker network create配合--subnet--gateway等參數用戶可靈活配置子網、網關、IP范圍等參數,創建符合特定需求的網絡

1:Bridge模式

特性說明
默認網絡模式Docker 安裝后自動創建?docker0?虛擬網橋,新容器默認連接到此網橋。
IP 分配Docker 從預定義的子網中為每個容器分配唯一 IP 地址。
容器間通信通過?docker0?網橋實現同一宿主機上的容器間通信。
外部網絡訪問宿主機通過?NAT(網絡地址轉換)?將容器私有 IP 轉換為宿主機公網 IP 進行通信。
適用場景適用于大多數單機容器場景,提供網絡隔離,同時支持外部訪問。
優點- 默認配置,簡單易用
- 提供網絡隔離,避免端口沖突
- 支持 NAT 訪問外網
缺點- 相比?host?或?macvlan?模式,網絡性能稍低
- 跨主機通信需要額外配置

bridge 模式是 docker 的默認網絡模式,不寫 --net 參數,就是 bridge 模式。使用 docker run -p 時,docker 實際是在 iptables 做了 DNAT 規則,實現端口轉發功能。可以使用 iptables -t nat -vnL 查看。bridge 模式如下圖所示:

如果你之前有 Docker 使用經驗,你可能已經習慣了使用 --link 參數來使容器互聯。

隨著 Docker 網絡的完善,強烈建議大家將容器加入自定義的 Docker 網絡來連接多個容器,而不是使用 --link 參數。

創建一個叫 my-net 的 bridge 類型的網絡
?

[root@bogon ~]# docker network create -d bridge my-net

查看都有哪些網絡

[root@bogon ~]# docker network ls
NETWORK ID     NAME      DRIVER    SCOPE
8cd27b16846c   bridge    bridge    local
8095f54e4dee   host      host      local
2171fab71098   my-net    bridge    local
be41d33662a5   none      null      local

?運行一個容器并連接到新建的?my-net?網絡

[root@bogon ~]# docker run -itd --rm --name busybox1 --network my-net busybox sh -c 'while true;do echo hello;done'
f7614de88f1eabf174de8c4679e4f5407bf1c5fbb4c2932a5f8327ecaea4978

?運行一個容器并加入到?my-net?網絡

/ # ping busybox1

這樣,busybox1?容器和?busybox2?容器建立了互聯關系,如果你有多個容器之間需要互相連接,推薦使用?Docker Compose

2:Host模式

特性說明
網絡模式容器直接使用宿主機的網絡棧,無獨立網絡命名空間。
IP 地址容器與宿主機共享 IP 地址,無獨立 IP。
端口管理容器直接使用宿主機端口,可能導致端口沖突
網絡性能高性能(無 NAT 或網橋轉發開銷)。
隔離性低隔離性(容器與宿主機網絡環境完全共享)。
適用場景適用于需要極致網絡性能不擔心端口沖突的場景(如性能測試、本地開發)。
優點- 網絡延遲低,吞吐量高
- 無需額外配置端口映射
缺點- 無網絡隔離,安全性較低
- 多個容器可能因端口沖突無法共存

如果啟動容器的時候使用 host 模式,那么這個容器將不會獲得一個獨立的 Network Namespace,而是和宿主機共用一個 Network Namespace。容器將不會虛擬出自己的網卡,配置自己的 IP 等,而是使用宿主機的 IP 和端口。但是,容器的其他方面,如文件系統、進程列表等還是和宿主機隔離的。Host

模式如下圖所示:

[root@bogon ~]# docker run -tid --net=host --name docker_host1 busybox

由于使用了?Host?模式,容器會直接使用宿主機的網絡端口,因此可以直接在宿主機上通過?localhost?訪問容器內的服務,使用?ifconfig?命令可以看到容器的網絡和宿主機的是一致的。

[root@bogon ~]# docker exec -it docker_host1 sh
/ # ifconfig

3:Container模式

特性說明
網絡模式新容器共享指定容器的網絡命名空間(IP、端口、網絡接口等完全一致)。
IP 地址與目標容器使用相同 IP 和端口,無法獨立分配。
通信方式容器間直接通過?localhost?或共享網絡棧通信,無需經過 NAT 或網橋。
網絡性能高性能(無額外網絡開銷,類似?host?模式但限定共享范圍)。
隔離性低隔離性(共享網絡棧的容器間無網絡隔離)。
適用場景適用于緊密耦合的容器組(如主應用 + Sidecar 日志/監控容器)。
優點- 容器間通信零延遲
- 無需配置端口映射或服務發現
- 資源占用少
缺點- 共享網絡的容器不能綁定相同端口
- 調試復雜(網絡行為相互影響)

這個模式指定新創建的容器和已經存在的一個容器共享一個 Network Namespace,而不是和宿主機共享。新創建的容器不會創建自己的網卡,配置自己的 IP,而是和一個指定的容器共享 IP、端口范圍等。同樣,兩個容器除了網絡方面,其他的如文件系統、進程列表等還是隔離的。兩個容器的進程可以通過 lo 網卡設備通信。Container 模式示意圖:

[root@bogon ~]# docker run -tid --name host1 busybox

# 創建 host2 容器共享 host1 容器的網絡

[root@bogon ~]# docker run -itd --net=container:host1 --name host2 busybox

# 查詢 host1 容器的網絡

[root@bogon ~]# docker exec -it host1 ifconfig
eth0      Link encap:Ethernet  HWaddr 02:42:AC:11:00:02  inet addr:172.17.0.2  Bcast:172.17.255.255  Mask:255.255.0.0UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1RX packets:8 errors:0 dropped:0 overruns:0 frame:0TX packets:0 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:0 RX bytes:648 (648.0 B)  TX bytes:0 (0.0 B)lo        Link encap:Local Loopback  inet addr:127.0.0.1  Mask:255.0.0.0UP LOOPBACK RUNNING  MTU:65536  Metric:1RX packets:0 errors:0 dropped:0 overruns:0 frame:0TX packets:0 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:1 RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

# 查看 host2 容器的網絡,確認和 host1 容器的網絡一致

[root@bogon ~]# docker exec -it host2 ifconfig

4:None模式

特性說明
網絡模式容器僅擁有?lo?回環接口,無任何外部網絡連接。
IP 地址無外部 IP,完全隔離。
網絡功能默認無法與宿主機、其他容器或外網通信,需手動配置網絡(如添加?veth?設備)。
安全性最高隔離性,適用于對網絡安全要求極高的場景。
適用場景- 安全敏感型應用(如審計、加密服務)
- 需完全自定義網絡的特殊場景
優點- 絕對網絡隔離,避免攻擊面
- 完全自主控制網絡配置
缺點- 無默認網絡功能,需手動配置
- 不適合需要常規通信的容器

使用 none 模式,Docker 容器擁有自己的 Network Namespace,但是,并不為 Docker 容器進行任何網絡配置。也就是說,這個 Docker 容器沒有網卡、IP、路由等信息。需要我們自己為 Docker 容器添加網卡、配置 IP 等。None 模式示意圖:

[root@bogon ~]# docker run -itd --net=none --name none01 busybox sh
c7805a0df84bdfb370c106b24eaba173abd4fcee6ee689eade46191015548a
[root@bogon ~]# docker exec -it none01 sh
/ # ifconfig
lo        Link encap:Local Loopbackinet addr:127.0.0.1  Mask:255.0.0.0UP LOOPBACK RUNNING  MTU:65536  Metric:1RX packets:0 errors:0 dropped:0 overruns:0 frame:0TX packets:0 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:1RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

5:Overlay 模式

Overlay 模式主要用于 Docker Swarm 集群,它允許容器在不同的 Docker 宿主機之間進行通信。它基于 VXLAN(Virtual eXtensible Local Area Network)技術,在物理網絡之上創建一個虛擬的覆蓋網絡。

當容器之間進行通信時,數據包會被封裝在 VXLAN 報頭中,通過物理網絡進行傳輸。在接收端,VXLAN 報頭會被解封裝,還原出原始的數據包。

Overlay 網絡是分布式的,每個 Docker 宿主機上都有一個網絡代理(如 Docker 的 docker_gwbridge)負責管理和轉發數據包。

# 在 Docker Swarm 集群中創建一個 Overlay 網絡
docker network create -d overlay my_overlay_network
# 在不同的宿主機上創建服務并連接到 Overlay 網絡
docker service create --name my_service --network my_overlay_network nginx

6:Macvlan 模式

在 Macvlan 模式下,Docker 為每個容器分配一個唯一的 MAC 地址,使得容器在網絡中看起來像一個獨立的物理設備。

容器直接連接到宿主機的物理網絡接口,繞過了 docker0 網橋,從而提高了網絡性能。容器可以直接與外部網絡進行通信,就像一個獨立的主機一樣。

每個容器都有自己獨立的網絡配置,與宿主機和其他容器之間相互隔離。

# 創建一個 Macvlan 網絡 
docker network create -d macvlan \
--subnet=192.168.1.0/24 \
--gateway=192.168.1.1 \
-o parent=eth0 \
my_macvlan_network
# 創建一個使用 Macvlan 網絡的容器
docker run -d --name my_macvlan_container --network my_macvlan_network nginx

7:自定義網絡模式

除了上述內置的網絡模式,你還可以使用 docker network create 命令創建自定義的 bridge 網絡,以滿足特定的網絡需求,例如指定子網、網關、IP 范圍等。

使用如下命令創建一個自定義網絡

docker network create \
--subnet=172.21.0.0/16 \
--gateway=172.21.0.1 \
my_custom_network

此命令的主要目的是創建一個新的 Docker 網絡,這個網絡可以用于容器之間的通信。默認情況下,創建的是一個基于 bridge 驅動的網絡。

參數/選項說明示例值作用
docker network createDocker 創建網絡的基礎命令-用于創建自定義 Docker 網絡
--subnet指定網絡的子網范圍(CIDR 格式)172.21.0.0/16定義容器的 IP 分配范圍(示例中可用 IP:172.21.0.1 ~ 172.21.255.254)
--gateway設置網絡的網關地址(必須是子網內的有效 IP)172.21.0.1容器通過該網關訪問外部網絡(類似路由器的功能)
<network_name>自定義網絡的名稱my_custom_network創建容器時通過名稱連接到此網絡(如?--network=my_custom_network

創建一個新的容器并加入這個自定義網絡

docker run -d --name my_container --network my_custom_network nginx

二:端口映射

特性說明命令示例適用場景
隨機映射(-P 大寫)自動將容器內?EXPOSE?聲明的所有端口隨機映射到宿主機的高端口(32768-61000)docker run -d -P nginx快速測試,避免手動指定端口沖突
指定映射(-p 小寫)手動指定宿主機端口與容器端口的映射關系docker run -d -p 8080:80 nginx(宿主機8080 → 容器80)生產環境標準化部署,需固定端口
宿主機隨機端口僅指定容器端口,宿主機端口由 Docker 自動分配docker run -d -p 80 nginx(容器80 → 宿主機隨機端口如32769)需要暴露容器端口但不關心宿主機具體端口
多端口映射同時映射多個端口docker run -d -p 8080:80 -p 443:443 nginx需暴露多個服務的場景(如HTTP+HTTPS)
綁定特定IP限制端口映射僅對指定宿主機IP生效docker run -d -p 192.168.1.100:8080:80 nginx增強安全性,僅允許特定網絡接口訪問
協議指定顯式聲明端口協議(TCP/UDP)docker run -d -p 8080:80/tcp -p 53:53/udp nginx需區分協議的場景(如DNS服務用UDP)
--rm 選項容器停止后自動刪除docker run --rm -d -p 8080:80 nginx臨時測試,避免殘留容器

關鍵對比

對比項-P(大寫)-p(小寫)
端口分配Docker 自動隨機選擇(32768-61000)用戶手動指定或部分隨機
映射范圍容器內所有?EXPOSE?端口僅映射命令行中指定的端口
使用場景快速測試、臨時環境生產環境、需精確控制端口的場景

注意事項

  1. 端口沖突:宿主機端口若被占用,容器會啟動失敗(錯誤提示?Bind for 0.0.0.0:8080 failed)。

  2. 防火墻:確保宿主機防火墻(如?firewalld/iptables)放行映射的端口。

  3. 安全建議

    • 生產環境避免使用隨機端口(-P)。

    • 限制IP綁定(如?-p 127.0.0.1:8080:80)以減少暴露面。

三:容器互聯

特性說明命令示例適用場景
--link?方式通過別名連接容器(已逐漸被棄用)docker run -dit --name web02 --link web01:myweb01 centos:7舊版本 Docker 兼容場景
自定義網絡方式創建自定義網絡,容器加入同一網絡即可互聯(推薦方式)docker network create mynet
docker run -dit --network=mynet --name web01 centos:7
docker run -dit --network=mynet --name web02 centos:7
生產環境,需靈活管理容器通信
DNS 自動解析同一自定義網絡內的容器可通過容器名直接通信在?web02?中直接執行?ping web01替代?--link,無需手動配置別名
/etc/hosts?注入--link?會在目標容器的?/etc/hosts?中寫入源容器 IP 和別名cat /etc/hosts?顯示?172.17.0.2 myweb01調試或兼容舊應用
隔離性默認?bridge?網絡隔離容器;自定義網絡提供可控的互聯-需平衡隔離與通信需求的場景
安全性--link?僅單向通信;自定義網絡支持雙向通信-需細粒度控制通信權限的場景

關鍵對比

對比項--link(舊方式)自定義網絡(推薦方式)
通信方向單向(源→目標)雙向
配置復雜度需手動指定別名自動通過容器名解析
維護性難擴展(容器增多后混亂)易管理(天然支持多容器互聯)
版本兼容性舊版本支持,新版本逐漸棄用所有現代 Docker 版本均支持

創建自定義網絡并互聯容器

# 創建網絡
docker network create mynet# 啟動容器并加入同一網絡
docker run -dit --network=mynet --name web01 centos:7
docker run -dit --network=mynet --name web02 centos:7# 測試通信(在 web02 中)
docker exec -it web02 ping web01

--link?方式(僅作了解)

docker run -dit --name web01 centos:7
docker run -dit --name web02 --link web01:myweb01 centos:7
docker exec -it web02 ping myweb01

注意事項

  1. 棄用警告--link?可能導致依賴問題,建議遷移到自定義網絡。

  2. DNS 優勢:自定義網絡自動提供容器名解析,無需維護?/etc/hosts

  3. 多網絡支持:一個容器可加入多個網絡,實現復雜拓撲(如隔離后端數據庫與前端服務)。

四:容器間通信實現案例

1. 網絡創建選項
選項說明示例命令
--driver?/?-d指定網絡驅動類型(默認?bridgedocker network create -d bridge my_network
--subnet定義網絡的子網范圍(CIDR 格式)docker network create --subnet=172.18.0.0/16 my_network
--gateway設置網絡的網關 IP(需在子網范圍內)docker network create --subnet=172.19.0.0/16 --gateway=172.19.0.1 my_network
--ip-range指定容器 IP 的分配范圍(子網的子集)docker network create --subnet=172.20.0.0/16 --ip-range=172.20.1.0/24 my_network
--internal創建僅限內部通信的網絡(禁止訪問外網)docker network create --internal my_internal_network
--attachable允許非 Swarm 服務的容器加入網絡docker network create --attachable my_attachable_network

2. 容器通信實現步驟
步驟操作關鍵命令
1. 創建自定義網絡使用?docker network create?創建網絡docker network create my_net
2. 啟動容器并加入網絡通過?--net?將容器連接到同一網絡docker run -dit --name pc01 --net=my_net centos:7
3. 測試通信在同一網絡內的容器可通過容器名直接通信docker exec -it pc01 ping pc02(成功)
4. 隔離驗證未加入同一網絡的容器無法通信docker exec -it pc01 ping web03(失敗)

3. 通信方式對比
特性--link(舊方式)自定義網絡(推薦方式)
通信方向單向雙向
配置復雜度需手動指定別名自動通過容器名解析
擴展性難維護(容器增多后混亂)天然支持多容器互聯
跨主機支持僅單機支持(結合?overlay?驅動)
安全性低(依賴?/etc/hosts?注入)高(隔離網絡 + DNS 解析)

第二節:數據持久化技術

一:Docker的數據管理

1. 數據卷核心概念
特性說明
定義繞過容器文件系統,直接掛載宿主機目錄到容器內部的特殊目錄
生命周期獨立于容器,刪除容器后數據卷仍保留
存儲位置默認位于宿主機?/var/lib/docker/volumes/?下,也可綁定到自定義宿主目錄
共享性支持多個容器同時掛載同一數據卷

2. 數據卷核心作用
作用說明應用場景示例
數據持久化容器刪除后數據仍保留在宿主機數據庫容器(如 MySQL、PostgreSQL)
數據共享多個容器讀寫同一數據卷共享配置文件、日志文件或靜態資源(如 Nginx 配置)
備份與恢復直接操作宿主機上的數據卷文件進行備份定期備份數據庫文件到外部存儲
分離數據與應用容器鏡像僅包含應用,數據獨立存儲開發環境與生產環境使用相同鏡像,通過不同數據卷加載數據

3. 數據卷操作命令
操作命令示例說明
創建數據卷docker volume create my_volume創建名為?my_volume?的匿名卷
綁定掛載目錄docker run -v /宿主機路徑:/容器路徑 nginx將宿主機目錄直接掛載到容器(需絕對路徑)
使用命名卷docker run -v my_volume:/容器路徑 nginx使用已創建的命名卷
查看數據卷列表docker volume ls列出所有數據卷
刪除數據卷docker volume rm my_volume刪除指定數據卷(需先解除容器掛載)

4. 數據卷類型對比
類型匿名卷命名卷綁定掛載
創建方式-v /容器路徑docker volume create?+?-v 卷名:/容器路徑-v /宿主機路徑:/容器路徑
存儲位置Docker 管理(隨機哈希命名)Docker 管理(用戶自定義名稱)用戶指定宿主機目錄
可維護性低(依賴容器生命周期)高(顯式管理)高(直接操作宿主機文件)
適用場景臨時數據生產環境持久化數據開發調試或需直接修改宿主機文件的場景

二:Docker數據管理注意事項

注意事項說明示例/建議
1. 選擇合適的數據卷類型根據場景選擇匿名卷、具名卷或綁定掛載-?匿名卷:臨時數據(如編譯緩存)
-?具名卷:數據庫持久化(如 MySQL)
-?綁定掛載:開發時共享配置文件
2. 使用絕對路徑綁定掛載宿主機目錄時必須使用絕對路徑-v /home/user/app:/app(正確)
-v ./app:/app(錯誤,需絕對路徑)
3. 定期清理數據卷匿名卷和未使用的具名卷會占用磁盤空間docker volume ls(查看)
docker volume rm <卷名>(刪除)
4. 容器內數據持久化關鍵數據必須掛載到數據卷,避免容器刪除后丟失MySQL 數據目錄:-v mysql_data:/var/lib/mysql
5. 數據共享與并發控制多容器掛載同一數據卷時需處理并發問題數據庫容器:應用層加鎖或使用事務
日志文件:使用日志收集工具(如 Fluentd)
6. 備份與恢復通過操作宿主機上的數據卷文件實現備份備份 MySQL 數據卷:
docker run --rm -v mysql_data:/volume -v /backup:/backup alpine tar czf /backup/mysql_backup.tar.gz /volume
7. 權限管理確保容器內用戶有權限訪問掛載的目錄Nginx 容器:
宿主機目錄權限設為?755,用戶組與容器內?www-data?匹配
8. 安全性敏感數據避免直接掛載,使用 Docker Secret 或加密卷配置文件含密碼:
docker secret create db_password ./password.txt

關鍵對比:數據卷類型選擇

類型匿名卷具名卷綁定掛載
管理難度難(隨機名稱,易遺留)易(自定義名稱,可追溯)易(直接操作宿主機文件)
持久性是(需手動清理)是(顯式刪除)是(依賴宿主機目錄)
適用場景臨時數據、測試環境生產環境數據庫、持久化存儲開發調試、配置文件共享

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

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

相關文章

鏈路管理和命令管理

第1章 鏈路管理在通信領域&#xff0c;鏈路&#xff08;Link&#xff09; 是兩個設備之間進行數據傳輸的物理或邏輯路徑。例如&#xff1a;網絡鏈路&#xff1a;TCP/IP 連接、UDP 通信、WebSocket串口鏈路&#xff1a;RS232、RS485、CAN 總線無線鏈路&#xff1a;藍牙、Wi-Fi、…

BERT模型基本原理及實現示例

BERT&#xff08;Bidirectional Encoder Representations from Transformers&#xff09;是Google在2018年提出的預訓練語言模型&#xff0c;其核心思想是通過雙向Transformer結構捕捉上下文信息&#xff0c;為下游NLP任務提供通用的語義表示。 一、模型架構BERT基于Transforme…

NPM組件包 json-cookie-csv 等竊取主機敏感信息

【高危】NPM組件包 json-cookie-csv 等竊取主機敏感信息 漏洞描述 當用戶安裝受影響版本的 json-cookie-csv 等NPM組件包時會竊取用戶的主機名、用戶名、工作目錄、IP地址等信息并發送到攻擊者可控的服務器地址。 MPS編號MPS-xo1f-4kue處置建議強烈建議修復發現時間2025-07-…

【Netty+WebSocket詳解】WebSocket全雙工通信與Netty的高效結合與實戰

一、 Netty網絡框架、WebSocket協議基礎 1.1 Netty網絡框架介紹 1.2 WebSocket簡介 1.3 WebSocket握手流程 二、為什么選擇NettyWebSocket&#xff1f; 三、NettyWebSocket與Spring WebSocket 3.1 架構層級對比 3.2 核心組件差異 3.3 協議支持深度 3.4 性能基準測試 3.5 開發…

5、Vue中使用Cesium實現交互式折線繪制詳解

引言 Cesium是一款強大的開源3D地理信息可視化引擎&#xff0c;廣泛應用于數字地球、地圖可視化等領域。在Vue項目中集成Cesium可以快速構建高性能的地理信息應用。本文將詳細介紹如何在Vue項目中實現交互式折線繪制功能&#xff0c;包括頂點添加、臨時繪制、距離計算等核心功…

mysql實戰之主從復制

原理圖理論&#xff1a;一、配置準備每臺主機都安裝mysql對每臺主機都進行對時操作&#xff0c;減少時間誤差[rooteveryone ~]# timedatectl set-timezone Asia/Shanghai [rooteveryone ~]# systemctl restart chronyd.service 對每臺主機都進行關閉防火墻、上下文等&#xff0…

中望CAD2026亮點速遞(5):【相似查找】高效自動化識別定位

本文為CAD芯智庫整理&#xff0c;未經允許請勿復制、轉載&#xff01;原文轉自&#xff1a;www.xwzsoft.com/h-nd-594.html CAD的相似查找功能主要應用于需要重復操作、標準化控制、一致性檢查或復雜模式識別的場景&#xff0c;通過圖形相似度算法&#xff0c;快速找到匹配的圖…

國產化條碼類庫Spire.Barcode教程:使用 C# 讀取二維碼(QR Code)——從圖片或數據流解析

二維碼已成為現代應用的常見組成部分&#xff0c;廣泛應用于用戶身份驗證、移動支付、商品包裝和活動票務等場景。很多使用 C# 開發的系統需要從圖像或掃描件中提取二維碼信息&#xff0c;因此掌握二維碼識別技術顯得尤為重要。 為滿足這類需求&#xff0c;開發者需要一種既可…

IPSAN 共享存儲詳解:架構、優化與落地實踐指南

一、IPSAN 技術定位與核心價值核心價值對比矩陣&#xff1a;維度IPSANFC-SAN實現方案成本端口成本$500端口成本$2000復用IP網絡設備傳輸距離跨地域&#xff08;VPN/專線&#xff09;≤10公里兩地三中心架構運維效率SNMP/CLI管理Zone/ALPA管理自動化運維工具鏈協議標準IETF RFC …

【衛星語音】基于神經網絡的低碼率語音編解碼(ULBC)方案架構分析:以SoundStream為例

摘要 隨著深度學習技術的快速發展&#xff0c;基于神經網絡的音頻編解碼技術已成為下一代音頻壓縮的重要研究方向。本文以Google提出的SoundStream為核心分析對象&#xff0c;深入探討其在低碼率語音編解碼領域的創新架構設計和關鍵技術突破。SoundStream通過全卷積編解碼器網絡…

技術面試問題總結一

MySQL的幾種鎖機制一、從鎖的粒度角度劃分表級鎖機制&#xff1a;它是對整張表進行鎖定的一種鎖。當一個事務對表執行寫操作時&#xff0c;會獲取寫鎖&#xff0c;在寫鎖持有期間&#xff0c;其他事務無法對該表進行讀寫操作&#xff1b;而當事務執行讀操作時&#xff0c;會獲取…

Python(一)

基本語法&#xff1a;變量&#xff0c;語法變量類型&#xff1a;不同于Java&#xff0c;C語言&#xff0c;C&#xff0c;Python在創建一個變量的時候&#xff0c;不需要聲明變量類型&#xff0c;由編譯器自行識別Python語句在只有一個語句的時候語句末尾不需要分號&#xff0c;…

Adaptive AUTOSAR中的Firewall技術:智能汽車網絡安全架構的核心

1 防火墻技術基礎 1.1 定義與演進歷程 防火墻(Firewall)作為一種位于內部網絡與外部網絡之間的網絡安全系統,本質上是依照特定規則允許或限制數據傳輸的信息安全防護機制。在汽車電子電氣架構從分布式向集中式轉變的背景下,防火墻技術已從傳統的IT領域深度融入Adaptive A…

android閃光燈源碼分析

目錄 一、APP層源碼分析 二&#xff0c;framework層代碼分析 ???????2.1 binder溯源 這幾天擼了android11 aosp閃光燈源碼&#xff0c;本著前人栽樹后人乘涼的原則&#xff0c;有志于android系統開發的新同學們提供一盞明燈&#xff0c;照亮你們前行。 本人擼代碼風格&…

文心一言4.5開源部署指南及文學領域測評

&#x1f4dd;個人主頁&#xff1a;哈__ 期待您的關注 目錄 一、引言 二、文心一言開源模型 2.1 MoE架構 2.2 文心一言MoE架構 三、文心一言稠密模型部署 3.1 產品選擇 3.2 環境選擇 3.3 Python3.12安裝 3.3 PaddlePaddle-GPU安裝 3.4 FastDeploy-GPU安裝 ?編輯3.…

深入探討 C++ 中的浮點數數據類型

核心概念&#xff1a;IEEE 754 標準 C 中的浮點數&#xff08;float, double, long double&#xff09;在絕大多數現代系統上遵循 IEEE 754 標準。這個標準定義了浮點數在內存中的二進制表示方式、運算規則、特殊值&#xff08;如無窮大、NaN&#xff09;等。數據類型與精度 fl…

相機:以鼠標點為中心縮放(使用OpenGL+QT開發三維CAD)

很多軟件中&#xff08;Auto CAD、ODA等&#xff09;支持以鼠標點為中心進行放縮操作&#xff0c;有什么黑科技嗎&#xff1f; 本章節為相機原理和實現的補充內容&#xff0c;支持鼠標放縮時以鼠標點為中心進行放縮。 對應視頻課程已上線&#xff0c;歡迎觀看和支持~ https:…

??XAMPP安全升級指南:修復CVE-2024-4577漏洞,從PHP 8.2.12升級至PHP 8.4.10??

??1. 背景與漏洞概述?? 近期,PHP官方披露了一個高危漏洞 ??CVE-2024-4577??,該漏洞影響PHP 8.2.x及更早版本,可能導致遠程代碼執行(RCE)或信息泄露。由于XAMPP默認捆綁的PHP版本(如8.2.12)可能受此漏洞影響,建議用戶盡快升級至最新的??PHP 8.4.10??(或官…

ES 壓縮包安裝

以下是 Elasticsearch (ES) 通過 .tar.gz 壓縮包安裝的詳細步驟&#xff08;適用于 Linux/macOS 系統&#xff09;&#xff1a; 1. 準備工作 1.1 檢查系統依賴 Java 環境&#xff1a;ES 需要 JDK&#xff0c;推薦 OpenJDK 11/17&#xff08;ES 7.x/8.x 兼容版本&#xff09;。…

RoboRefer:面向機器人視覺-語言模型推理的空間參考

25年6月來自北航、北大和北京智源的論文“RoboRefer: Towards Spatial Referring with Reasoning in Vision-Language Models for Robotics”。 空間參考是實體機器人與三維物理世界交互的基本能力。然而&#xff0c;即使有了強大的預訓練視覺-語言模型 (VLM)&#xff0c;近期方…