一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Nginx實戰(zhàn)全攻略

馬哥Linux運維 ? 來源:CSDN技術(shù)社區(qū) ? 2025-03-31 10:44 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

前言

Nginx 是一個高性能的 HTTP 和反向代理服務(wù)器,也是一個 IMAP/POP3 代理服務(wù)器。它以其高并發(fā)處理能力、穩(wěn)定性、豐富的功能模塊和低內(nèi)存消耗而聞名。

一. Nginx簡介

● Nginx (engine x) 是一個高性能的HTTP和反向代理web服務(wù)器,同時也提供了IMAP/POP3/SMTP服務(wù)。
● 其特點是占有內(nèi)存少,并發(fā)能力強,事實上nginx的并發(fā)能力在同類型的網(wǎng)頁服務(wù)器中表現(xiàn)較好
● Nginx 是一個安裝非常的簡單、配置文件非常簡潔(還能夠支持perl語法)、Bug非常少的服務(wù)。Nginx 啟動特別容易,并且?guī)缀蹩梢宰龅?*24不間斷運行,即使運行數(shù)個月也不需要重新啟動。
● Nginx代碼完全用C語言從頭寫成。官方數(shù)據(jù)測試表明能夠支持高達 50,000 個并發(fā)連接數(shù)的響應(yīng)。

二. Nginx作用

2.1 代理

- 正向代理:代理是代理客戶端的
客戶端 <一> 代理 一>服務(wù)端

9becef28-0aef-11f0-9310-92fbcf53809c.png在這里插入圖片描述
正向代理是一個位于客戶端和原始服務(wù)器之間的服務(wù)器,所有客戶端的請求都首先發(fā)送到正向代理服務(wù)器,然后由代理服務(wù)器將請求轉(zhuǎn)發(fā)到原始服務(wù)器。正向代理的目的是為了隱藏客戶端的信息。

Nginx不是默認的正向代理服務(wù)器,但可以通過配置來實現(xiàn)正向代理的功能。

通常某些服務(wù)因為安全問題,限制固定訪問,因此可以通過正向代理解決
訪問某些國外的服務(wù)訪問慢,可以通過正向代理中繼緩解丟包和延遲高的問題

例如:VPN



http {
    resolver 8.8.8.8;
    server {
        listen 8088;
        location / {
            proxy_pass http://$http_host$request_uri;
        }
    }
}





AI寫代碼

反向代理:

反向代理,客戶端對代理是無感知的,客戶端不需要任何配置就可以訪問,客戶端將請求發(fā)送到反向代理服務(wù)器,由反向代理服務(wù)器去選擇目標(biāo)服務(wù)器獲取數(shù)據(jù)后,再返回給客戶端,此時反向代理服務(wù)器和目標(biāo)服務(wù)器對外就是一個服務(wù)器,暴露的是代理服務(wù)器地址,隱藏了真實服務(wù)器IP地址。

Nginx是默認的反向代理服務(wù)器。以下是一個簡單的Nginx配置示例,用于設(shè)置Nginx作為反向代理服務(wù)器:

9bf9a718-0aef-11f0-9310-92fbcf53809c.png在這里插入圖片描述
比如:百度的服務(wù)器是在不同的服務(wù)器上,我們只需要搜索baidu.com就行

2.2 負載均衡

如果請求數(shù)過大,單個服務(wù)器解決不了,我們增加服務(wù)器的數(shù)量,然后將請求分發(fā)到各個服務(wù)器上,將原先請求集中到單個服務(wù)器的情況改為請求分發(fā)到多個服務(wù)器上,就是負載均衡。

Nginx提供的負載均衡策略有2種:內(nèi)置策略和擴展策略。內(nèi)置策略為輪詢,加權(quán)輪詢,Ip hash。擴展策略,就天馬行空,只有你想不到的沒有他做不到的。

輪詢:

9c0dcc48-0aef-11f0-9310-92fbcf53809c.png在這里插入圖片描述

加權(quán)輪詢

9c23ff7c-0aef-11f0-9310-92fbcf53809c.png在這里插入圖片描述

iphash

對客戶端請求的ip進行hash操作,然后根據(jù)hash結(jié)果將同一個客戶端ip的請求分發(fā)給同一臺服務(wù)器進行處理,可以解決session不共享的問題。

9c399bd4-0aef-11f0-9310-92fbcf53809c.png在這里插入圖片描述

2.3 動靜分離

在我們的軟件開發(fā)中,有些請求是需要后臺處理的,有些請求是不需要經(jīng)過后臺處理的(如:css、html、jpg、js等等文件),這些不需要經(jīng)過后臺處理的文件稱為靜態(tài)文件。讓動態(tài)網(wǎng)站里的動態(tài)網(wǎng)頁根據(jù)一定規(guī)則把不變的資源和經(jīng)常變的資源區(qū)分開來,動靜資源做好了拆分以后,我們就可以根據(jù)靜態(tài)資源的特點將其做緩存操作。提高資源響應(yīng)的速度。

9c5158e6-0aef-11f0-9310-92fbcf53809c.png在這里插入圖片描述

三. 安裝

下載地址:https://nginx.org/en/download.html

下載

9c6484e8-0aef-11f0-9310-92fbcf53809c.png在這里插入圖片描述

解壓至任意非中文路徑下:

9c75cff0-0aef-11f0-9310-92fbcf53809c.png在這里插入圖片描述

運行
直接雙擊nginx.exe 即可(一閃而過),或者進入cmd 輸入nginx.exe

9c833bc2-0aef-11f0-9310-92fbcf53809c.png在這里插入圖片描述

檢測
瀏覽器輸入:http://localhost:80 瀏覽器默認端口就是80 所以80端口可以不寫

9c8b3336-0aef-11f0-9310-92fbcf53809c.png在這里插入圖片描述

配置監(jiān)聽
nginx的配置文件是conf目錄下的nginx.conf,默認配置的nginx監(jiān)聽的端口為80,如果80端口被占用可以修改為未被占用的端口即可



  server {
        listen       80;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            root   html;
            index  index.html index.htm;
        }
...




當(dāng)我們修改了nginx的配置文件nginx.conf 時,不需要關(guān)閉nginx后重新啟動nginx,只需要執(zhí)行命令 nginx -s reload 即可讓改動生效

關(guān)閉nginx
如果使用cmd命令窗口啟動nginx, 關(guān)閉cmd窗口是不能結(jié)束nginx進程的,可使用兩種方法關(guān)閉nginx
(1) 輸入nginx命令 nginx -s stop(快速停止nginx) 或 nginx -s quit(完整有序的停止nginx)
(2) 使用taskkill taskkill /f /t /im nginx.exe
taskkill是用來終止進程的,
/f是強制終止 .
/t終止指定的進程和任何由此啟動的子進程。
/im示指定的進程名稱 .

3.2 Linux

1.安裝gcc(已經(jīng)安裝的可以忽略這個步驟)安裝 nginx 需要先將官網(wǎng)下載的源碼進行編譯,編譯依賴 gcc 環(huán)境,如果沒有 gcc 環(huán)境,則需要安裝



yum install gcc-c++






2.PCRE pcre-devel安裝(已經(jīng)安裝的可以忽略這個步驟)PCRE(Perl Compatible Regular Expressions) 是一個Perl庫,包括 perl 兼容的正則表達式庫。nginx 的 http 模塊使用 pcre 來解析正則表達式,所以需要在 linux 上安裝 pcre 庫,pcre-devel 是使用 pcre 開發(fā)的一個二次開發(fā)庫。nginx也需要此庫。命令:



yum install -y pcre pcre-devel





AI寫代碼

3.zlib安裝(已經(jīng)安裝的可以忽略這個步驟)zlib 庫提供了很多種壓縮和解壓縮的方式, nginx 使用 zlib 對 http 包的內(nèi)容進行 gzip ,所以需要在 Centos 上安裝 zlib 庫。



yum install -y zlib zlib-devel





AI寫代碼

4.openssl安裝(已經(jīng)安裝的可以忽略這個步驟)OpenSSL 是一個強大的安全套接字層密碼庫,囊括主要的密碼算法、常用的密鑰和證書封裝管理功能及 SSL 協(xié)議,并提供豐富的應(yīng)用程序供測試或其它目的使用。nginx 不僅支持 http 協(xié)議,還支持 https(即在ssl協(xié)議上傳輸http),所以需要在 Centos 安裝 OpenSSL 庫



yum install -y openssl openssl-devel





AI寫代碼

5.下載linux的nginx安裝包

9c987e74-0aef-11f0-9310-92fbcf53809c.png在這里插入圖片描述

6.上傳到linux上

7.解壓縮



tar -zxvf nginx-1.26.0.tar.gz
cd nginx-1.26.0/





AI寫代碼

8.順序執(zhí)行下面三個命令



./configure
make
make install





AI寫代碼

9.查看安裝路徑 whereis nginx

9caeb284-0aef-11f0-9310-92fbcf53809c.png在這里插入圖片描述

10.nginx常用命令



# cd /usr/local/nginx/sbin/
# ./nginx  //啟動
# ./nginx -s stop  //停止
# ./nginx -s quit  //安全退出
# ./nginx -s reload  //重新加載配置文件
# ps aux|grep nginx  //查看nginx進程





AI寫代碼

確認開放了80端口



# 開發(fā)端口命令
firewall-cmd --zone=public --add-port=8080/tcp --permanent
# 重新加載
firewall-cmd --reload
# 查看已開放的端口
firewall-cmd --zone=public --list-ports






啟動成功訪問 http://ip:80

9cc04c7e-0aef-11f0-9310-92fbcf53809c.png在這里插入圖片描述

3.3 Docker

1.拉取鏡像



docker pull nginx






2.查看鏡像



[root@iZf8z89pv77t13an9qqmcrZ ~]# systemctl start docker
[root@iZf8z89pv77t13an9qqmcrZ ~]# docker images
REPOSITORY           TAG       IMAGE ID       CREATED       SIZE
1panel/maxkb         latest    c023f10d7cab   2 weeks ago   2.66GB
nginx                latest    605c77e624dd   2 years ago   141MB
redis                latest    7614ae9453d1   2 years ago   113MB
mysql                latest    3218b38490ce   2 years ago   516MB
nacos/nacos-server   latest    bdf60dc2ada3   2 years ago   1.05GB





AI寫代碼

3.運行鏡像



[root@iZwz96byk26u1sns4xp7giZ ~]# docker run --name mn -d -p 80:80 nginx
49c02ef7c18facc452762fa7e722720235290df28fce39b6aebb8b024ae21d70






4.檢測

9cd10244-0aef-11f0-9310-92fbcf53809c.png在這里插入圖片描述

掛載
簡單啟動nginx



docker run --name mn -d -p 80:80 nginx





AI寫代碼

創(chuàng)建配置文件夾



mkdir -p /opt/nginx





AI寫代碼

復(fù)制文件



docker cp mn:/usr/share/nginx/html /opt/mount/nginx/
docker cp mn:/etc/nginx/nginx.conf /opt/mount//nginx/
docker cp mn:/etc/nginx/conf.d /opt/mount/nginx/





AI寫代碼

刪除原有的Nginx容器



docker rm -f mn





AI寫代碼

創(chuàng)建容器



docker run --name nginx -d 
-p 80:80 -p 81:81 
-v /opt/mount/nginx/html:/usr/share/nginx/html 
-v /opt/mount/nginx/nginx.conf:/etc/nginx/nginx.conf:ro 
-v /opt/mount/nginx/conf.d:/etc/nginx/conf.d 
nginx:1.26.0





AI寫代碼

修改配置

9ce252b0-0aef-11f0-9310-92fbcf53809c.png在這里插入圖片描述

把端口改為81

9cf4f5c8-0aef-11f0-9310-92fbcf53809c.png在這里插入圖片描述

四. 實戰(zhàn)

1.將某個現(xiàn)有的項目打包

9da0f72e-0aef-11f0-9310-92fbcf53809c.png在這里插入圖片描述
2.運行jar項目
打開window命令窗口,啟動服務(wù)java -jar SpringBoot-Redis-1.0-SNAPSHOT.jar
9dc69984-0aef-11f0-9310-92fbcf53809c.png在這里插入圖片描述
3.在打開另外一個窗口,啟動一個8081的服務(wù)
java -jar SpringBoot-Redis-1.0-SNAPSHOT.jar --server.port=8081
9dd5c74c-0aef-11f0-9310-92fbcf53809c.png在這里插入圖片描述
4.啟動nginx服務(wù). ginx.exe
9de34926-0aef-11f0-9310-92fbcf53809c.png在這里插入圖片描述
5.修改nginx配置



upstream zyy {
server 127.0.0.1:8080 weight=1;
server 127.0.0.1:8081 weight=1;
}

    server {
        listen       80;
        server_name  localhost;

        location / {
            root   html;
            index  index.html index.htm;
      proxy_pass  http://zyy;

        }
        ##....
}


9df1efe4-0aef-11f0-9310-92fbcf53809c.png在這里插入圖片描述

五. 配置詳解

https://blog.csdn.net/weixin_43239880/article/details/130841067

5.1原本配置到解釋

我們把其中的注釋都刪掉,除掉了注釋之后的nginx代碼,現(xiàn)在只有22行了



worker_processes  1;
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
    server {
        listen       80;
        server_name  localhost;
        location / {
            root   html;
            index  index.html index.htm;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}


注解版本



#nginx進程數(shù),建議設(shè)置為等于CPU總核心數(shù)。
worker_processes  1;
# 事件區(qū)塊開始
events {
    #單個進程最大連接數(shù)(最大連接數(shù)=連接數(shù)*進程數(shù))
    #根據(jù)硬件調(diào)整,和前面工作進程配合起來用,盡量大,但是別把cpu跑到100%就行。每個進程允許的最多連接數(shù),理論上每臺nginx服務(wù)器的最大連接數(shù)為。
    worker_connections  1024;
}
#設(shè)定http服務(wù)器,利用它的反向代理功能提供負載均衡支持
http {
    #include:導(dǎo)入外部文件mime.types,將所有types提取為文件,然后導(dǎo)入到nginx配置文件中
    include       mime.types;
     #默認文件類型
    default_type  application/octet-stream;
    #開啟高效文件傳輸模式,sendfile指令指定nginx是否調(diào)用sendfile函數(shù)來輸出文件,對于普通應(yīng)用設(shè)為 on,如果用來進行下載等應(yīng)用磁盤IO重負載應(yīng)用,可設(shè)置為off,以平衡磁盤與網(wǎng)絡(luò)I/O處理速度,降低系統(tǒng)的負載。注意:如果圖片顯示不正常把這個改成off。
    #sendfile指令指定 nginx 是否調(diào)用sendfile 函數(shù)(zero copy 方式)來輸出文件,對于普通應(yīng)用,必須設(shè)為on。如果用來進行下載等應(yīng)用磁盤IO重負載應(yīng)用,可設(shè)置為off,以平衡磁盤與網(wǎng)絡(luò)IO處理速度,降低系統(tǒng)uptime。
    sendfile        on;
      #長連接超時時間,單位是秒
    keepalive_timeout  65;
    # 第一個Server區(qū)塊開始,表示一個獨立的虛擬主機站點
    server {
        # 提供服務(wù)的端口,默認80
        listen       80;
        # 提供服務(wù)的域名主機名
        server_name  localhost;
        #對 "/" 啟用反向代理,第一個location區(qū)塊開始
        location / {
            root   html;  #服務(wù)默認啟動目錄
            index  index.html index.htm; # 默認的首頁文件,多個用空格分開
        }
         # 錯誤頁面路由
        error_page   500 502 503 504  /50x.html; # 出現(xiàn)對應(yīng)的http狀態(tài)碼時,使用50x.html回應(yīng)客戶
        location = /50x.html { # location區(qū)塊開始,訪問50x.html
            root   html;  # 指定對應(yīng)的站點目錄為html
        }
    }
}

5.2 整體基本理解

雖然上面有了注解,但是看起來還是很迷糊。接著解釋:我們可以把nginx.conf分為三個部分進行理解:
第一部分:全局塊
第二部分:events塊
第三部分:http塊

9e057604-0aef-11f0-9310-92fbcf53809c.png在這里插入圖片描述

六. Nginx與網(wǎng)關(guān)的區(qū)別

本質(zhì)上API網(wǎng)關(guān)也是做了請求的轉(zhuǎn)發(fā),那既然Nginx也可以做請求轉(zhuǎn)發(fā),那這兩者有什么區(qū)別?

9e179424-0aef-11f0-9310-92fbcf53809c.png在這里插入圖片描述
在具體架構(gòu)設(shè)計時Nginx做負載均衡時,考慮到API網(wǎng)關(guān)在系統(tǒng)中不止一個(以集群的方式做高可用),通??梢詫ginx至于API網(wǎng)關(guān)前,負責(zé)對API網(wǎng)關(guān)的負載均衡,然后再由網(wǎng)關(guān)決定進入根據(jù)判定到哪個真實的web 服務(wù)器。讓兩者的分工更加明確,也就是:API網(wǎng)關(guān)聚合服務(wù),Nginx請求轉(zhuǎn)發(fā)

業(yè)務(wù)網(wǎng)關(guān)(gateway):對于具體的后端業(yè)務(wù)應(yīng)用或者是服務(wù)和業(yè)務(wù)有一定關(guān)聯(lián)性的策略網(wǎng)關(guān)。業(yè)務(wù)網(wǎng)關(guān)針對具體的業(yè)務(wù)需要提供特定的流控策略、緩存策略、鑒權(quán)認證策略

流量網(wǎng)關(guān)(Nginx):與業(yè)務(wù)網(wǎng)關(guān)相反,定義全局性的、跟具體的后端業(yè)務(wù)應(yīng)用和服務(wù)完全無關(guān)的策略網(wǎng)關(guān)。流量網(wǎng)關(guān)通常只專注于全局的Api管理策略,比如全局流量監(jiān)控、日志記錄、全局限流、黑白名單控制、接入請求到業(yè)務(wù)系統(tǒng)的負載均衡等

業(yè)務(wù)網(wǎng)關(guān)一般部署在流量網(wǎng)關(guān)之后、業(yè)務(wù)系統(tǒng)之前,比流量網(wǎng)關(guān)更靠近業(yè)務(wù)系統(tǒng)。通常API網(wǎng)指的是業(yè)務(wù)網(wǎng)關(guān)。有時候我們也會模糊流量網(wǎng)關(guān)和業(yè)務(wù)網(wǎng)關(guān),讓一個網(wǎng)關(guān)承擔(dān)所有的工作,所以這兩者之間并沒有嚴(yán)格的界線。

9e2bb8c8-0aef-11f0-9310-92fbcf53809c.png在這里插入圖片描述
nginx與gateway的區(qū)別:

編寫語言:
○ Nginx是用C語言編寫的,這使得它在處理高并發(fā)連接時表現(xiàn)出色,但它的配置和擴展相對有限。
○ Gateway(如Spring Cloud Gateway)通常使用Java編寫,提供了更豐富的服務(wù)治理和路由轉(zhuǎn)發(fā)功能,使得在微服務(wù)架構(gòu)中更容易實現(xiàn)擴展功能。

功能特性:
○ Nginx更側(cè)重于反向代理和負載均衡功能,如HTTP代理、TCP代理、HTTP緩存、SSL加密等。
○ Gateway(如Spring Cloud Gateway)提供了豐富的服務(wù)治理和路由轉(zhuǎn)發(fā)功能,如服務(wù)注冊和發(fā)現(xiàn)、熔斷降級、限流等。

部署方式:
○ Nginx通常部署在傳統(tǒng)的Web服務(wù)器架構(gòu)中,可以作為流量入口,處理大量的并發(fā)連接。
○ Gateway(如Spring Cloud Gateway)通常部署在微服務(wù)架構(gòu)中,與Spring Cloud的其他組件(如Eureka、Zuul等)進行無縫集成,提供統(tǒng)一的API路由管理。

擴展性:
○ 對于Nginx的擴展,通常需要結(jié)合Lua等腳本語言,這可能需要額外的學(xué)習(xí)成本。
○ Gateway(如Spring Cloud Gateway)由于使用Java編寫,可以更容易地集成到微服務(wù)的擴展功能中,利用Java生態(tài)系統(tǒng)的豐富資源。

總結(jié)來說,Nginx和Gateway在微服務(wù)架構(gòu)中都發(fā)揮著重要的作用,但它們的設(shè)計目標(biāo)、功能特性和擴展方式有所不同。選擇哪種作為網(wǎng)關(guān)取決于具體的項目需求和技術(shù)棧。

Nginx在其中扮演的角色是什么?
● 反向代理
● 負載均衡
SpringGateway在其中扮演的角色是什么?
● 統(tǒng)一鑒權(quán)
● 負載均衡
● 服務(wù)發(fā)現(xiàn)

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 網(wǎng)關(guān)
    +關(guān)注

    關(guān)注

    9

    文章

    5514

    瀏覽量

    52714
  • 服務(wù)器
    +關(guān)注

    關(guān)注

    13

    文章

    9749

    瀏覽量

    87547
  • HTTP
    +關(guān)注

    關(guān)注

    0

    文章

    523

    瀏覽量

    32602
  • nginx
    +關(guān)注

    關(guān)注

    0

    文章

    168

    瀏覽量

    12537

原文標(biāo)題:Nginx實戰(zhàn)全攻略:從安裝配置到反向代理,詳解與網(wǎng)關(guān)的差異及性能優(yōu)化技巧

文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運維】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    GPS 設(shè)計全攻略

    GPS 設(shè)計全攻略
    發(fā)表于 09-25 14:11

    LED技術(shù)全攻略

    LED技術(shù)全攻略
    發(fā)表于 09-25 14:16

    GPS 設(shè)計全攻略

    GPS 設(shè)計全攻略
    發(fā)表于 12-05 12:08

    GPS設(shè)計全攻略

    本帖最后由 zgzzlt 于 2012-8-16 13:58 編輯 GPS設(shè)計全攻略
    發(fā)表于 08-06 12:56

    LED技術(shù)全攻略

    本帖最后由 zgzzlt 于 2012-8-16 13:56 編輯 LED技術(shù)全攻略
    發(fā)表于 08-06 12:59

    MCU解密全攻略

    MCU解密全攻略
    發(fā)表于 08-19 14:28

    FPGA開發(fā)全攻略

    FPGA開發(fā)全攻略
    發(fā)表于 05-10 11:40

    FPGA開發(fā)全攻略

    FPGA開發(fā)全攻略
    發(fā)表于 09-27 10:59

    FPGA開發(fā)全攻略

    FPGA開發(fā)全攻略
    發(fā)表于 05-21 09:28

    FPGA開發(fā)全攻略

    FPGA開發(fā)全攻略
    發(fā)表于 03-03 10:30

    FPGA開發(fā)全攻略

    FPGA開發(fā)全攻略
    發(fā)表于 03-07 11:46

    MCU解密全攻略

    本內(nèi)容介紹了MCU解密的全攻略教程
    發(fā)表于 07-11 17:51 ?649次下載
    MCU解密<b class='flag-5'>全攻略</b>

    LED調(diào)光技術(shù)全攻略

    LED調(diào)光技術(shù)全攻略
    發(fā)表于 02-08 00:50 ?42次下載

    LED驅(qū)動電源方案全攻略

    LED驅(qū)動電源方案全攻略
    發(fā)表于 01-14 12:22 ?43次下載

    智能小車的DIY全攻略

    智能小車的DIY全攻略
    發(fā)表于 10-13 09:13 ?28次下載
    智能小車的DIY<b class='flag-5'>全攻略</b>