nginx高性能web服務器

web服務基礎介紹

一、Web服務核心流程
客戶端Web服務器應用處理HTTP請求 (Request)請求處理生成響應HTTP響應 (Response)客戶端Web服務器應用處理
二、互聯網發展里程碑

關鍵事件時間軸

1994-01-011996-01-011998-01-012000-01-012002-01-012004-01-012006-01-012008-01-01第一根專線開通 中國黃頁上線 阿里巴巴創立 淘寶網上線 支付寶創立 雙十一啟動 里程碑中國互聯網發展歷程
三、Web服務器演進

Apache工作模式對比

模式并發處理方式優點缺點適用場景
Prefork多進程(select)穩定可靠高內存消耗低并發場景
Worker多進程+多線程內存占用少Keepalive資源浪費中等并發
Event事件驅動(epoll)高并發性能無線程安全控制高并發長連接場景

Nginx核心優勢

# Nginx典型應用架構示例
http {upstream app_servers {server 10.0.0.101:8080 weight=5;server 10.0.0.102:8080;}server {listen 80;server_name example.com;# 靜態資源直返location ~* \.(jpg|css|js)$ {root /data/static;expires 30d;}# 動態請求代理location /api {proxy_pass http://app_servers;proxy_set_header X-Real-IP $remote_addr;}}
}
四、用戶體驗關鍵指標

性能影響研究數據

  1. 8秒定律:頁面加載>8秒 → 30%用戶放棄
  2. 亞馬遜:延遲100ms → 1%交易損失
  3. Google:延遲500ms → 20%流量下降
  4. 79%用戶不會再次訪問慢速網站
  5. 40%用戶在3秒延遲后離開

性能影響因素矩陣

用戶體驗
客戶端因素
服務端因素
硬件配置
網絡速率
地理距離
網絡帶寬
硬件性能
架構設計
并發處理
五、服務端I/O深度解析

磁盤I/O性能計算

# 機械磁盤IOPS計算公式
def calculate_iops(rpm):seek_time = 9  # 7200RPM尋址時間(ms)rotational_latency = 60000 / rpm / 2  # 旋轉延遲total_latency = seek_time + rotational_latencyreturn 1000 / total_latencyprint(f"7200RPM磁盤IOPS: {calculate_iops(7200):.1f}")  # 75.9
print(f"15000RPM磁盤IOPS: {calculate_iops(15000):.1f}") # 166.6

網絡I/O處理流程

  1. 請求接收:TCP三次握手建立連接
  2. 數據處理
    • 內核空間 → 用戶空間數據拷貝
    • 應用層請求處理
  3. 響應返回
    • 用戶空間 → 內核空間拷貝
    • 內核 → 網卡傳輸
六、I/O模型演進

五種I/O模型對比

I/O模型
阻塞I/O
非阻塞I/O
多路復用I/O
信號驅動I/O
異步I/O
進程掛起等待
輪詢消耗CPU
select/poll/epoll
內核信號通知
全程無阻塞

Epoll核心優勢代碼解析

// Epoll高效實現原理
int epoll_create(int size);  // 創建epoll實例struct epoll_event {uint32_t events;    // EPOLLIN/EPOLLOUT等epoll_data_t data;  // 用戶數據
};// 注冊監控事件
epoll_ctl(epfd, EPOLL_CTL_ADD, fd, &event);// 等待事件就緒
int n = epoll_wait(epfd, events, MAX_EVENTS, timeout);
for (int i = 0; i < n; i++) {process_event(events[i]); // 僅處理活躍連接
}
七、零拷貝技術

傳統vs零拷貝對比

傳統方式
4次拷貝
2次CPU切換
零拷貝
2次拷貝
0次CPU切換

sendfile實現原理

http {sendfile on;  # 啟用零拷貝tcp_nopush on; # 優化包傳輸server {location /largefile {# 直接內核空間到網卡傳輸sendfile_max_chunk 1m; # 分塊傳輸}}
}
八、關鍵性能公式
  1. 并發連接計算

    最大并發 = worker_processes × worker_connections
    
  2. 文件描述符限制

    # 系統級限制檢查
    cat /proc/sys/fs/file-max# 進程級限制設置
    worker_rlimit_nofile 65535;
    
  3. Keepalive優化

    http {keepalive_timeout 65 60;  # 服務器超時65s,客戶端60skeepalive_requests 1000;  # 單連接最大請求數
    }
    

二:Nginx架構和安裝

2.1 Nginx概述
  1. Nginx介紹

    • Nginx(engine X)由俄羅斯開發者Igor Sysoev于2002年創建,分為社區版和商業版(Nginx Plus)。
    • 2019年被F5 Networks以6.7億美元收購。
    • 核心功能:高性能HTTP/HTTPS反向代理服務器、郵件代理服務器、TCP/UDP代理服務器,解決C10K問題(單機10萬并發連接)。
    • 官網:http://nginx.org
  2. 二次發行版

    • Tengine:淘寶基于Nginx開發的增強版,支持大流量場景(如淘寶、天貓)。
      • 官網:http://tengine.taobao.org
    • OpenResty:集成Lua腳本的高性能Web平臺(章亦春團隊開發)。
      • 官網:http://openresty.org/cn
  3. 功能介紹

    • 靜態資源服務器(HTML/圖片/JS/CSS)。
    • HTTP/HTTPS反向代理。
    • 動態資源代理(FastCGI/uWSGI/SCGI)。
    • TCP/UDP請求轉發。
    • IMAP4/POP3郵件代理。
  4. 基礎特性

    • 模塊化設計,高擴展性。
    • 高可靠性,支持熱部署(不停機更新配置/版本)。
    • 低內存消耗:1萬keep-alive連接僅需2.5MB內存。
    • 事件驅動模型(epoll)、異步I/O、零拷貝(sendfile)。
  5. Web服務功能

    • 虛擬主機(server塊)。
    • 支持keep-alive和管道連接復用。
    • 訪問日志定制、URL重寫、路徑別名。
    • IP/用戶訪問控制、速率/并發限制。

2.2 Nginx架構和進程
  1. 進程結構

    • Master進程
      • 管理Worker進程,加載配置、綁定端口、平滑升級。
      • 接收外部信號(如reload/stop),監控Worker狀態(異常時自動重啟)。
    • Worker進程
      • 實際處理請求(平等、獨立),數量建議等于CPU核心數。
      • 功能:接收請求、I/O調用、緩存查詢、響應結果。
    Master進程
    Worker 1
    Worker 2
    Worker N
    處理HTTP請求
    FastCGI調用
    訪問緩存
  2. 進程間通信

    • Master與Worker:通過單向管道傳遞指令(如進程ID、文件描述符)。
    • Worker之間:依賴Master中轉信息,或通過共享內存(如upstream zone)通信。
  3. HTTP連接建立

    • Master初始化監聽Socket → fork多個Worker → Worker競爭接受新連接(避免驚群)。
    • 與傳統多進程/多線程模型對比:
      • 傳統:每連接獨占線程,資源消耗大。
      • Nginx:單線程處理多連接(事件驅動),高效復用資源。
  4. HTTP處理流程

    1. 接收請求 → 解析請求行/頭 → 匹配Server塊
    2. URL重寫 → IP訪問控制 → 生成響應
    3. 內容處理 → 日志記錄 → 返回數據
    

2.3 Nginx模塊介紹
  • 核心模塊:進程管理、錯誤日志、配置文件解析(ngx_core_module)。
  • 標準HTTP模塊:端口配置、編碼設置、響應頭控制(ngx_http_core_module)。
  • 可選HTTP模塊:SSL支持、壓縮、GeoIP解析(需編譯時啟用)。
  • 郵件模塊:POP3/IMAP/SMTP協議支持(ngx_mail_module)。
  • Stream模塊:TCP/UDP反向代理(ngx_stream_module)。
  • 第三方模塊:JSON/Lua擴展(如OpenResty)。

模塊分類圖

核心模塊 → HTTP模塊 → 郵件模塊 → Stream模塊 → 第三方模塊

2.4 Nginx安裝
  1. 版本選擇

    • Mainline:開發版(奇數版本,如1.19)。
    • Stable:穩定版(偶數版本,如1.20)。
    • Legacy:舊穩定版(如1.18)。
  2. 編譯安裝步驟

    # 1. 安裝依賴
    dnf install gcc pcre-devel zlib-devel openssl-devel -y
    useradd -s /sbin/nologin -M nginx# 2. 解壓并編譯
    tar zxf nginx-1.24.0.tar.gz
    cd nginx-1.24.0
    ./configure \--prefix=/usr/local/nginx \--user=nginx --group=nginx \--with-http_ssl_module \     # 啟用HTTPS--with-http_v2_module \      # HTTP/2支持--with-http_realip_module \  # 客戶端真實IP透傳--with-stream \              # TCP/UDP代理--with-pcre                  # 正則支持# 3. 安裝
    make && make install
    
  3. 目錄結構

    • conf/:配置文件(核心:nginx.conf)。
    • html/:默認Web資源(可更改路徑)。
    • logs/:日志(訪問日志/錯誤日志/PID文件)。
    • sbin/:可執行文件(nginx命令)。
  4. 驗證與命令

    # 查看版本
    /usr/local/nginx/sbin/nginx -v# 測試配置
    nginx -t# 啟停命令
    nginx -s reload  # 重載配置
    nginx -s quit    # 優雅停止
    
  5. Systemd服務文件

    [Unit]
    Description=The NGINX HTTP Server
    After=network.target[Service]
    Type=forking
    PIDFile=/usr/local/nginx/logs/nginx.pid
    ExecStart=/usr/local/nginx/sbin/nginx
    ExecReload=/usr/local/nginx/sbin/nginx -s reload
    ExecStop=/bin/kill -s QUIT $MAINPID[Install]
    WantedBy=multi-user.target
    
    systemctl daemon-reload
    systemctl start nginx
    

2.5 平滑升級與回滾
  1. 升級流程

    用戶NginxNginx Master新Master舊Worker舊Master發送USR2信號重命名pid為nginx.pid.oldbin啟動新進程(舊Master子進程)發送WINCH信號(平滑停止)發送QUIT信號(關閉)用戶NginxNginx Master新Master舊Worker舊Master
  2. 操作示例

    # 1. 備份舊二進制文件
    cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.old# 2. 編譯新版本(僅make不install)
    cd nginx-1.26.1
    ./configure [參數同舊版]
    make# 3. 替換二進制文件
    cp -f objs/nginx /usr/local/nginx/sbin/# 4. 觸發升級
    kill -USR2 舊Master_PID     # 啟動新Master
    kill -WINCH 舊Master_PID     # 關閉舊Worker# 5. 驗證后清理舊Master
    kill -QUIT 舊Master_PID
    
  3. 回滾步驟

    # 1. 恢復舊二進制文件
    mv /usr/local/nginx/sbin/nginx.old /usr/local/nginx/sbin/nginx# 2. 重啟舊Worker
    kill -HUP 舊Master_PID# 3. 關閉新Master
    kill -WINCH 新Master_PID
    kill -QUIT 新Master_PID
    

關鍵點

  • 升級時新舊進程并存,舊進程處理存量請求。
  • 回滾需確保舊配置兼容性。

Nginx 核心配置詳解


3.1 配置文件結構與說明

核心組成
  1. 主配置文件nginx.conf
  2. 子配置文件:通過 include conf.d/*.conf 加載
  3. MIME類型文件mime.types(定義文件擴展名與類型的映射)
  4. 其他協議配置:如 fastcgi_params(FastCGI參數)
配置文件格式規則
  • 指令以分號 ; 結尾,指令與值間用空格分隔。
  • 指令塊用 {} 組織,可嵌套(如 httpserverlocation)。
  • 使用 # 添加注釋,$ 引用變量。
  • 支持正則表達式(如 location 匹配)。
主配置文件結構
# 全局配置段(main block)
user nginx nginx;                      # 運行用戶和組
worker_processes auto;                 # 工作進程數(推薦 = CPU核心數)
error_log /var/log/nginx/error.log;    # 錯誤日志路徑
pid /run/nginx.pid;                    # PID文件路徑# 事件驅動配置(event block)
events {worker_connections 1024;           # 單個工作進程最大并發連接數use epoll;                         # 事件驅動模型(Linux推薦epoll)
}# HTTP協議配置(http block)
http {include mime.types;                # 導入MIME類型文件default_type application/octet-stream; # 默認MIME類型sendfile on;                       # 啟用零拷貝傳輸keepalive_timeout 65;              # 長連接超時時間# 虛擬主機配置(server block)server {listen 80;                     # 監聽端口server_name example.com;        # 域名root /var/www/html;             # 網站根目錄# URL路徑匹配(location block)location / {index index.html;          # 默認首頁}}# 可擴展配置:mail、stream等
}

3.2 全局配置詳解

關鍵指令
指令作用示例
worker_processes工作進程數(推薦設為CPU核心數)worker_processes 4;
worker_cpu_affinity綁定進程到CPU核心(減少上下文切換)worker_cpu_affinity 0001 0010;
error_log錯誤日志路徑和級別error_log logs/error.log warn;
worker_rlimit_nofile進程最大打開文件數worker_rlimit_nofile 65535;
events.use事件驅動模型(Linux用epolluse epoll;
優化配置示例
user nginx nginx;
worker_processes auto;
worker_cpu_affinity auto;
error_log /var/log/nginx/error.log error;
pid /run/nginx.pid;
worker_rlimit_nofile 100000;events {worker_connections 65535;use epoll;multi_accept on;  # 一次接受多個連接
}

3.3 HTTP塊核心配置

基礎指令
指令作用示例
include導入其他配置文件include conf.d/*.conf;
default_type默認MIME類型(未知文件類型)default_type text/plain;
sendfile啟用零拷貝傳輸(提升靜態文件性能)sendfile on;
keepalive_timeout長連接超時時間keepalive_timeout 30s;
虛擬主機配置(Server Block)
server {listen 80;                          # 監聽端口server_name www.example.com;         # 域名(支持通配符)root /data/web/html;                # 網站根目錄access_log /var/log/nginx/access.log; # 訪問日志路徑# 錯誤頁面定制error_page 404 /404.html;error_page 500 502 503 504 /50x.html;
}

3.4 Location塊深度解析

匹配規則與優先級
符號匹配規則優先級示例
=精確匹配最高location = /logo.png { ... }
^~前綴匹配(不檢查正則)location ^~ /static/ { ... }
~正則匹配(區分大小寫)location ~ \.php$ { ... }
~*正則匹配(不區分大小寫)`location ~* .(jpg
無符號通用前綴匹配location / { ... }
root vs alias
  • root:路徑 = root + location
    location /images/ {root /data/web;  # 文件路徑:/data/web/images/logo.png
    }
    
  • alias:路徑 = alias 替換 location
    location /static/ {alias /data/files/;  # 訪問/static/1.txt → /data/files/1.txt
    }
    

3.5 高級配置實戰

1. 賬戶認證
location /admin {auth_basic "Admin Area";                     # 認證提示文字auth_basic_user_file /etc/nginx/.htpasswd;   # 密碼文件路徑
}

生成密碼文件:

htpasswd -c /etc/nginx/.htpasswd admin
2. 自定義錯誤頁面
error_page 404 /404.html;
location = /404.html {root /data/web/errors;internal;  # 禁止直接訪問
}
3. 文件下載服務
location /download {autoindex on;                   # 啟用目錄列表autoindex_localtime on;         # 顯示服務器本地時間limit_rate 1024k;               # 限速 1MB/s
}
4. 長連接優化
http {keepalive_timeout 30s;          # 長連接超時keepalive_requests 1000;        # 單連接最大請求數
}
5. 防盜鏈配置
location ~* \.(jpg|png)$ {valid_referers none blocked *.example.com;if ($invalid_referer) {return 403;                 # 非法引用返回403}
}

3.6 配置調試技巧

  1. 語法檢查
    nginx -t
    
  2. 熱重載配置
    nginx -s reload
    
  3. 查看版本與編譯參數
    nginx -V
    

關鍵提示

  • 修改配置后務必用 nginx -t 測試語法。
  • 生產環境建議使用 include 拆分配置(如 conf.d/*.conf)。
  • 避免在 location 中使用 if 進行復雜判斷(影響性能)。

nginx的高級配置

4.1 Nginx 狀態頁

  • 功能:監控服務器全局狀態(非虛擬主機)。
  • 依賴模塊ngx_http_stub_status_module(編譯時需添加 --with-http_stub_status_module)。
  • 配置示例
    location /nginx_status {stub_status;                  # 啟用狀態頁auth_basic "Auth Login";       # 基礎認證auth_basic_user_file /usr/local/nginx/conf/.htpasswd;allow 192.168.0.0/16;          # 訪問控制allow 127.0.0.1;deny all;
    }
    
  • 輸出指標解析
    • Active connections:當前活動連接數(含 Reading + Writing + Waiting)。
    • accepts:Nginx 啟動后接受的客戶端請求總數。
    • handled:已處理的請求數(通常等于 accepts)。
    • requests:客戶端發送的總請求數。
    • Reading:正在讀取請求頭的連接數(值高可能需優化性能)。
    • Writing:正在發送響應的連接數(反映并發壓力)。
    • Waiting:空閑連接數(開啟 keep-alive 時有效)。

4.2 Nginx 壓縮功能

  • 功能:減少傳輸體積,提升加載速度(消耗 CPU 資源)。
  • 依賴模塊ngx_http_gzip_module(默認內置)。
  • 關鍵配置指令
    gzip on;                          # 啟用壓縮
    gzip_comp_level 4;                # 壓縮級別(1-9,建議4-5)
    gzip_min_length 1k;               # 最小壓縮文件大小
    gzip_types text/css application/xml text/javascript; # 壓縮文件類型
    gzip_vary on;                     # 響應頭添加 `Vary: Accept-Encoding`
    
  • 適用場景:文本文件(HTML/CSS/JS/XML),圖片視頻類文件效果有限。

4.3 Nginx 版本隱藏

  • 安全優化:避免暴露版本信息被利用。
  • 修改方法
    1. 編輯 Nginx 源碼文件 src/core/nginx.h
      #define NGINX_VERSION "1.0"     // 自定義版本號
      #define NGINX_VER "HAHA/" NGINX_VERSION  // 自定義服務器標識
      
    2. 重新編譯安裝 Nginx。

4.4 Nginx 變量使用

  • 內置變量:直接調用
    • $remote_addr:客戶端 IP
    • $request_uri:原始請求 URI(含參數)
    • $scheme:請求協議(HTTP/HTTPS)
  • 自定義變量
    location /test {set $name "timinglee";        # 定義變量echo $name;                   # 輸出變量值
    }
    

五、Nginx Rewrite 相關功能

5.1 ngx_http_rewrite_module 模塊指令
  1. if 指令

    • 作用:條件匹配,根據結果執行不同配置。
    • 語法
      if (條件) { ... }
      
    • 匹配規則
      • = / !=:字符串相等/不等
      • ~ / ~*:正則匹配(區分/不區分大小寫)
      • !-e / !-f:文件或目錄不存在
    • 示例
      location /test {if (!-e $request_filename) {return 404 "File not found";}
      }
      
  2. set 指令

    • 作用:定義變量。
    • 示例
      set $name "timinglee";
      echo $name;  # 輸出 "timinglee"
      
  3. break 指令

    • 作用:終止當前作用域內后續的 rewrite 指令。
    • 示例
      location /break {set $name lee;break;          # 后續 set 指令不執行set $port 80;   # 被跳過
      }
      
  4. return 指令

    • 作用:直接返回響應碼或重定向。
    • 示例
      location /return {return 301 https://$host$request_uri;  # 永久重定向到 HTTPS
      }
      

5.2 rewrite 指令
  • 語法
    rewrite regex replacement [flag];
    
  • 常用 Flags
    Flag作用適用場景
    last重寫后重新匹配 location多次重寫
    break終止當前重寫,繼續非 rewrite 指令單次重寫
    redirect臨時重定向(302)測試環境
    permanent永久重定向(301)生產環境域名變更
實戰案例
  1. HTTPS 自動跳轉

    server {listen 80;if ($scheme = http) {rewrite ^ https://$host$request_uri permanent; }
    }
    
  2. 舊域名重定向

    rewrite ^/old-url(.*)$ http://new.timinglee.org$1 permanent;
    
  3. 動靜分離資源重寫

    location ~* \.(jpg|css)$ {rewrite ^/static/(.*) /resources/$1 break;  # 重寫靜態資源路徑
    }
    

六、高級功能

6.1 防盜鏈配置
  • 原理:校驗 Referer 頭,阻止非授權站點資源盜用。
  • 配置示例
    location ~* \.(jpg|png)$ {valid_referers none blocked *.timinglee.org;if ($invalid_referer) {return 403 "Access Forbidden";}
    }
    
6.2 緩存加速
  1. Proxy Cache 配置

    proxy_cache_path /data/cache levels=1:2 keys_zone=mycache:10m max_size=10g;
    server {location / {proxy_cache mycache;proxy_cache_valid 200 302 10m;  # 緩存200/302響應10分鐘proxy_pass http://backend;}
    }
    
  2. 效果對比

    • 未啟用緩存:請求處理耗時 0.514s
    • 啟用 Memcached:耗時降至 0.452s
    • 啟用 srcache + Memcached:進一步降至 0.255s

七、Nginx 二次開發版本

7.1 OpenResty
  • 核心價值:通過 Lua 腳本擴展 Nginx,實現動態邏輯(如 API 網關、自定義認證)。
  • 安裝步驟
    ./configure --prefix=/apps/openresty --with-http_ssl_module
    make && make install
    
  • 基礎示例(Lua 輸出):
    location /hello {content_by_lua_block {ngx.say("Hello, OpenResty!")}
    }
    

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

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

相關文章

_init__.py的作用

目錄 場景1:沒有 `__init__.py` 的情況 場景2:有 `__init__.py` 并導入模塊 場景3:用 `__all__` 定義"推薦工具" 注意:工具箱內部的工具互相調用 情況1:在 `__init__.py` 中導入模塊 情況2:在 `__init__.py` 中直接導入模塊里的功能 關鍵原則 在 Python 中,__…

瀏覽器面試題及詳細答案 88道(12-22)

《前后端面試題》專欄集合了前后端各個知識模塊的面試題&#xff0c;包括html&#xff0c;javascript&#xff0c;css&#xff0c;vue&#xff0c;react&#xff0c;java&#xff0c;Openlayers&#xff0c;leaflet&#xff0c;cesium&#xff0c;mapboxGL&#xff0c;threejs&…

開發避坑指南(23):Tomcat高版本URL特殊字符限制問題解決方案(RFC 7230 RFC 3986)

異常信息 java.lang.IllegalArgumentException: 在請求目標中找到無效字符[/order/show?orderType01&orderTitle0xe50x8f0xa30xe50xb20xb80xe50x8a0xa80xe60x800x81&pageNum1 ]。有效字符在RFC 7230和RFC 3986中定義org.apache.coyote.http11.Http11InputBuffer.parse…

HTTPS的應用層協議

HTTPS的應用層協議 方案 5 - 非對稱加密 對稱加密 證書認證 在客戶端和服務器剛一建?連接的時候, 服務器給客戶端返回一個 證書&#xff0c;證書包含了之前服務端的公鑰, 也包含了網站的身份信息. 客戶端進行認證 當客戶端獲取到這個證書之后, 會對證書進行校驗(防止證書是偽…

【SpringBoot】05 容器功能 - SpringBoot底層注解的應用與實戰 - @Configuration + @Bean

文章目錄前言一、創建兩個組件二、使用傳統方式源代碼解釋三、使用SpringBoot方法源代碼解釋四、查看是否添加到組件中查看自定義組件名配置類在容器中注冊的是單實例組件配置類本身也是容器中的一個組件Configuration的proxyBeanMethods屬性&#xff1a;代理bean的方法proxyBe…

c#聯合Halcon進行OCR字符識別(含halcon-25.05 百度網盤)

1.下載安裝halcon 通過網盤分享的文件&#xff1a;halcon-25.05.0.0-x64-win64 鏈接: https://pan.baidu.com/s/1XAx-8ZQM-ZHkgHIc-dhCYw 提取碼: whek 2.c#環境配置 創建test_halcon_ocr項目 找到halcon的安裝路徑 我的&#xff1a; D:\halcon\HALCON-25.05-Progress\bin\x64…

絲桿支撐座怎樣助力升降設備實現智能化?

絲桿支撐座作為傳動系統中的關鍵支撐部件&#xff0c;憑借其高剛性、抗沖擊及精準定位能力&#xff0c;廣泛應用于重型機械與升降設備領域&#xff0c;為設備提供穩定可靠的軸向承載與徑向支撐&#xff0c;確保高負荷工況下的安全運行。電梯 / 升降平臺&#xff1a;液壓電梯的輔…

Notta:高效智能的音頻轉文字工具

本文轉載自&#xff1a;Notta&#xff1a;高效智能的音頻轉文字工具 - Hello123 ** 一、產品簡介 Notta 是一款基于 AI 語音識別引擎的語音轉文字工具&#xff0c;支持 58 種語言的轉錄和 42 種語言的翻譯。用戶可通過實時錄音或上傳音頻 / 視頻文件&#xff08;如 MP3、WAV …

Docker私有倉庫創建及Docky存儲與網絡配置(小白的“升級打怪”成長之路)

目錄 一、Docker私有倉庫創建 1、在一臺安裝Docker私有倉庫的主機上添加docker-compose 命令 2、安裝docker-ce服務 3、Docker 鏡像加速 4、安裝Harbor倉庫 5、使用腳本安裝倉庫 6、網站登陸 7、客戶端使用Harbor倉庫 二、Docky存儲與網絡配置 1、存儲與網絡 掛載主機…

谷歌ADK接入文件操作MCP

文章目錄MCP基礎概念文件操作服務器文件操作MCP接入谷歌ADK項目創建多輪對話代碼MCP基礎概念 MCP技術體系中&#xff0c;會將外部工具運行腳本稱作服務器&#xff0c;而接入這些外部工具的大模型運行環境稱作客戶端。 一個客戶端可以接入多個不同類型的服務器&#xff0c;但都…

高光譜技術的獨特優勢

高光譜技術憑借其?納米級連續光譜采集能力?和?圖譜合一的探測模式?&#xff0c;在多個領域展現出不可替代的獨特優勢&#xff1a;一、光譜維度&#xff1a;精細物質指紋識別?納米級連續光譜解析? 通過 ?5-10nm帶寬的數百個連續波段?&#xff08;最高330個通道&#xff…

基于Vue+Element UI集成高德地圖的完整實踐指南

本次開發使用deepseek 簡直如虎添翼得心應手 生成模擬數據、解決報錯那真是嘎嘎地 在 Vue Element UI 項目中引入高德地圖 具體實現步驟&#xff1a; 高德開放平臺&#xff1a;注冊賬號 → 進入控制臺 → 創建應用 → 獲取 Web端(JS API)的Key https://lbs.amap.com/ 這里需要…

Day50--圖論--98. 所有可達路徑(卡碼網),797. 所有可能的路徑

Day50–圖論–98. 所有可達路徑&#xff08;卡碼網&#xff09;&#xff0c;797. 所有可能的路徑 刷今天的內容之前&#xff0c;要先去《代碼隨想錄》網站&#xff0c;先看完&#xff1a;圖論理論基礎和深度優先搜索理論基礎。做完之后可以看題解。有余力&#xff0c;把廣度優先…

Python 異常捕獲

一、獲取未知錯誤try:# 相關處理邏輯 異常后面輸出print(輸入信息……) except Exception as e:print(未知錯誤,e)二、獲取已知錯誤except 錯誤單詞&#xff08;來源于錯誤信息的第一個單詞&#xff09;多個已知錯誤使用 except XXXXX:try:# 相關處理邏輯 異常后面輸出print…

RIOT、RT-Thread 和 FreeRTOS 是三種主流的實時操作系統

RIOT、RT-Thread 和 FreeRTOS 是三種主流的實時操作系統&#xff08;RTOS&#xff09;&#xff0c;專為嵌入式系統和物聯網&#xff08;IoT&#xff09;設備設計。它們在架構、功能、生態和應用場景上有顯著差異&#xff0c;以下是詳細對比&#xff1a;1. 架構與設計理念特性RI…

【FAQ】Win11創建資源不足繞開微軟賬號登錄

Win11安裝資源限制 因為 Windows 11 有兩項強制檢測 VMware 8 默認沒提供&#xff1a; TPM 2.0&#xff08;可信平臺模塊&#xff09;Secure Boot&#xff08;安全啟動&#xff09; 一步到位解決辦法&#xff08;官方兼容方式&#xff09; 關閉虛擬機電源編輯虛擬機設置 選項 →…

Docker使用----(安裝_Windows版)

一、Docker Docker 鏡像就像是一個軟件包&#xff0c;里面包括了應用程序的代碼、運行所需的庫和工具、配置文件等等&#xff0c;所有這些都打包在一起&#xff0c;以確保應用程序在不同的計算機上運行時&#xff0c;都能保持一致性。 可以把 Docker 鏡像想象成一個軟件安裝文件…

91、23種經典設計模式

設計模式是軟件設計中反復出現的解決方案的模板&#xff0c;用于解決特定問題并提高代碼的可維護性、可擴展性和可復用性。23種經典設計模式可分為創建型、結構型和行為型三大類&#xff0c;以下是具體分類及模式概述&#xff1a; 一、創建型模式&#xff08;5種&#xff09; 關…

Illustrator總監級AI魔法:一鍵讓低清logo變矢量高清,徹底告別手動描摹!

在海外從事設計十幾年&#xff0c;我敢說&#xff0c;每個設計師都經歷過一種“史詩級”的折磨&#xff1a;客戶發來一個像素低得感人、邊緣模糊不清的JPG格式Logo&#xff0c;然后要求你把它用在巨幅海報或者高清視頻上。這意味著什么&#xff1f;意味著我們要打開Illustrator…

各種 dp 刷題下

6.#8518 杰瑞征途 / 洛谷 P4072 征途 題意 Pine 開始了從 SSS 地到 TTT 地的征途。從 SSS 地到 TTT 地的路可以劃分成 nnn 段&#xff0c;相鄰兩段路的分界點設有休息站。Pine 計劃用 mmm 天到達 TTT 地。除第 mmm 天外&#xff0c;每一天晚上 Pine 都必須在休息站過夜。所以…