高性能Web服務(wù)器nginx及相關(guān)新技術(shù)的應用實踐S

上傳人:hao****an 文檔編號:252961428 上傳時間:2024-11-26 格式:PPT 頁數(shù):53 大?。?59.50KB
收藏 版權(quán)申訴 舉報 下載
高性能Web服務(wù)器nginx及相關(guān)新技術(shù)的應用實踐S_第1頁
第1頁 / 共53頁
高性能Web服務(wù)器nginx及相關(guān)新技術(shù)的應用實踐S_第2頁
第2頁 / 共53頁
高性能Web服務(wù)器nginx及相關(guān)新技術(shù)的應用實踐S_第3頁
第3頁 / 共53頁

下載文檔到電腦,查找使用更方便

14.9 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《高性能Web服務(wù)器nginx及相關(guān)新技術(shù)的應用實踐S》由會員分享,可在線閱讀,更多相關(guān)《高性能Web服務(wù)器nginx及相關(guān)新技術(shù)的應用實踐S(53頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、單擊此處編輯母版標題樣式,,單擊此處編輯母版文本樣式,,第二級,,第三級,,第四級,,第五級,,單擊此處編輯母版標題樣式,,單擊此處編輯母版文本樣式,,第二級,,第三級,,第四級,,第五級,,*,,*,高性能,Web,服務(wù)器,Nginx,及相關(guān)新技術(shù)的應用實踐,,北京金山軟件 逍遙網(wǎng),,張宴,,2009.10,什么是,Nginx,?,Nginx (“engine x”),是俄羅斯人,Igor Sysoev(,塞索耶夫,),編寫的一款高性能的,HTTP,和反向代理服務(wù)器。,,,Nginx,已經(jīng)在俄羅斯最大的門戶網(wǎng)站──,Rambler Media,()上運行了,4,年時間,同時俄羅斯超過,20%

2、,的虛擬主機平臺采用,Nginx,作為反向代理服務(wù)器。,,,在國內(nèi),已經(jīng)有新浪博客、新浪播客、搜狐通行證、網(wǎng)易新聞、網(wǎng)易博客、金山逍遙網(wǎng)、金山愛詞霸、校內(nèi)網(wǎng)、,YUPOO,相冊、豆瓣、迅雷看看等多家網(wǎng)站、頻道使用,Nginx,服務(wù)器。,,Nginx,的優(yōu)點①,1,、高并發(fā)連接:,官方測試能夠支撐,5,萬并發(fā)連接,在實際生產(chǎn)環(huán)境中跑到,2,~,3,萬并發(fā)連接數(shù)。,,2,、內(nèi)存消耗少:,在,3,萬并發(fā)連接下,開啟的,10,個,Nginx,進程才消耗,150M,內(nèi)存(,15M*10=150M,)。,,3,、配置文件非常簡單:,風格跟程序一樣通俗易懂。,,4,、成本低廉:,Nginx,為開源軟件,可以

3、免費使用。而購買,F5 BIG-IP,、,NetScaler,等硬件負載均衡交換機則需要十多萬至幾十萬人民幣。,,Nginx,的優(yōu)點②,5,、支持,Rewrite,重寫規(guī)則:,能夠根據(jù)域名、,URL,的不同,將,HTTP,請求分到不同的后端服務(wù)器群組。,,6,、內(nèi)置的健康檢查功能:,如果,Nginx Proxy,后端的某臺,Web,服務(wù)器宕機了,不會影響前端訪問。,,7,、節(jié)省帶寬:,支持,GZIP,壓縮,可以添加瀏覽器本地緩存的,Header,頭。,,8,、穩(wěn)定性高:,用于反向代理,宕機的概率微乎其微。,,單臺,Nginx,支撐了高達,2.8,萬的活動并發(fā)連接數(shù),2009-09-03,,14

4、:30,,金山游戲,《,劍俠情緣網(wǎng)絡(luò)版,3》,臨時維護,1,小時,大量玩家上官網(wǎng),論壇、評論、客服等動態(tài)應用,Nginx,服務(wù)器集群,每臺服務(wù)器的,Nginx,活動連接數(shù)達到,2.8,萬,這是本人遇到的,Nginx,生產(chǎn)環(huán)境最高并發(fā)值。,Nginx,的主要應用類別,1,、使用,Nginx,結(jié)合,FastCGI,運行,PHP,、,JSP,、,Perl,等程序,,,2,、使用,Nginx,作反向代理、負載均衡、規(guī)則過濾,,,3,、使用,Nginx,運行靜態(tài),HTML,頁、圖片,,,4,、,Nginx,與其他新技術(shù)的結(jié)合應用,Nginx,在金山逍遙網(wǎng)中的應用案例,金山逍遙網(wǎng),(),是金山游戲官方網(wǎng)站

5、,為金山軟件旗下的各款游戲提供新聞資訊、客戶服務(wù)、在線充值、視聽互動、在線活動、博客、相冊、論壇、玩家社區(qū)等內(nèi)容建設(shè)和在線服務(wù)支持。,金山逍遙網(wǎng),Nginx,七層負載均衡的應用,,Nginx,承擔每個機房,Web,負載均衡服務(wù),簡單的,Nginx,負載均衡配置①,……,,upstream bbs_server_pool {,,server 192.168.1.15:80 weight=1 max_fails=2 fail_timeout=30s;,,server 192.168.1.16:80 weight=1 max_fails=2 fail_timeout=30s;,,server

6、 192.168.1.17:80 weight=1 max_fails=2 fail_timeout=30s;,,server 192.168.1.18:80 weight=1 max_fails=2 fail_timeout=30s;,,},,……,,,在,nginx.conf,配置文件中,用,upstream,指令定義一組反向代理,/,負載均衡后端服務(wù)器池。,,簡單的,Nginx,負載均衡配置②,……,,server{,,listen 80;,,server_name *;,,location /,,{,,proxy_pass http://bbs_server_pool;,,

7、proxy_set_header Host $host;,,proxy_set_header X-Forwarded-For $remote_addr;,,},,access_log off;,,},,……,簡單的,Nginx,負載均衡配置③,proxy_pass http://bbs_server_pool;,用于指定反向代理的服務(wù)器池。,,,proxy_set_header Host $host;,當后端,Web,服務(wù)器上也配置有多個虛擬主機時,需要用該,Header,來區(qū)分反向代理哪個主機名。,,proxy_set_header X-Forwarded-For $remote_a

8、ddr;,如果后端,Web,服務(wù)器上的程序需要獲取用戶,IP,,請從該,Header,頭獲取。,Nginx,負載均衡的雙機熱備,,通常情況下的負載均衡,HA,高可用,優(yōu)點:實現(xiàn)了雙機熱備、故障自動轉(zhuǎn)移。,,缺點:備機服務(wù)器處于閑置狀態(tài),浪費了硬件資源。,逍遙網(wǎng),Nginx,負載均衡雙機互備,正常情況下,兩臺,Nginx,負載均衡服務(wù)器全部處于活動狀態(tài),對外提供服務(wù)。,服務(wù)器①綁定,IP,別名,/sbin/ifconfig eth0:ha1 61.1.1.2 broadcast 61.1.1.255 netmask 255.255.255.0 up,,/sbin/route add -host

9、61.1.1.2 dev eth0:ha1,,,,在服務(wù)器①的外網(wǎng)網(wǎng)卡,eth0,上,綁定了一個虛擬,綁定完成后發(fā)送,arping,包給網(wǎng)關(guān)。,服務(wù)器②綁定,IP,別名,/sbin/ifconfig eth0:ha2 61.1.1.3 broadcast 61.1.1.255 netmask 255.255.255.0 up,,/sbin/route add -host 61.1.1.3 dev eth0:ha2,,,,在服務(wù)器②的外網(wǎng)網(wǎng)卡,eth0,上,綁定了一個虛擬,綁定完成后發(fā)送,arping,包給網(wǎng)關(guān)。,,新的,Nginx,雙機互備,(,發(fā)生故障時,),自動接管公網(wǎng)虛擬,IP,,實現(xiàn)故

10、障轉(zhuǎn)移,服務(wù)器①去除,IP,別名,/sbin/ifconfig eth0:ha1 61.1.1.2 broadcast 61.1.1.255 netmask 255.255.255.0 down,,,通過兩臺服務(wù)器之間的互相檢測機制,當服務(wù)器①上的檢測程序發(fā)現(xiàn)自身的,Nginx,無法訪問時,停止綁定虛擬,服務(wù)器②接管原服務(wù)器①的虛擬,IP,/sbin/ifconfig eth0:ha1 61.1.1.2 broadcast 61.1.1.255 netmask 255.255.255.0 up,,/sbin/route add -host 61.1.1.2 dev eth0:ha1,,,,給網(wǎng)

11、關(guān)發(fā)送,Arping,包,保證了網(wǎng)關(guān)上,IP,、,MAC,地址對應關(guān)系能夠馬上更改,能夠做到強行接管虛擬,IP,。,Nginx,負載均衡,URL,分發(fā),,,硬件、軟件,,七層負載均衡對比:,,NetScaler,,與,,Nginx,,,硬件、軟件,,七層負載均衡對比:,,NetScaler,,與,,Nginx,根據(jù)不同的,URL,轉(zhuǎn)發(fā)到不同服務(wù)器,server{,,listen 80;,,server_name ;,,,location ~ ^/admincp.php,,{,,proxy_pass http://192.168.1.11;,,proxy_set_header Ho

12、st $host;,,proxy_set_header X-Forwarded-For $remote_addr;,,},,,location /,,{,,proxy_pass http://php_server_pool;,,proxy_set_header Host $host;,,proxy_set_header X-Forwarded-For $remote_addr;,,},,},Web,相關(guān)文件的實時自動同步,,少量文件的多服務(wù)器自動同步,使用,Linux 2.6,內(nèi)核的,inotify,監(jiān)控,Linux,文件系統(tǒng)事件。,,利用開源的,lsync,監(jiān)聽某一目錄,如果目錄內(nèi)文

13、件發(fā)生增、刪、改,利用,Rsync,協(xié)議自動同步到多臺服務(wù)器。,,lsyncd /data0/htdocs/ 192.168.5.1::hu_data/ 192.168.5.2::hu_data/ 192.168.5.3::hu_data/ 192.168.5.4::hu_data/,大量文件的多服務(wù)器自動同步,使用,Linux 2.6,內(nèi)核的,inotify,監(jiān)控,Linux,文件系統(tǒng)事件。,,修改可監(jiān)控的最大目錄數(shù)量,,echo 50000000 > /proc/sys/fs/inotify/max_user_watches,,金山逍遙網(wǎng)開發(fā)的,sersync,文件自動同步程序,適合大量文

14、件的自動同步,并可以在文件同步完成后,自動調(diào)用,CDN,緩存刷新接口,刷新發(fā)生修改、刪除的文件的訪問,URL,。,,用于:金山游戲官網(wǎng)的,CMS,發(fā)布系統(tǒng)。,Nginx,的,Web,緩存服務(wù),,Nginx,的緩存功能,Nginx,從版本開始,支持了類似,Squid,的緩存功能;,,緩存把,URL,及相關(guān)組合當作,Key,,用,md5,編碼哈希后保存;,,Nginx,的,Web,緩存服務(wù)只能為指定,URL,或狀態(tài)碼設(shè)置過期時間,不支持類似,Squid,的,PURGE,指令,手動清除指定緩存頁面;,,采用,MMAP,實現(xiàn),設(shè)置的緩存區(qū)大小不能超過物理內(nèi)存,+SWAP,的值。,,反向代理中的,Ngi

15、nx.conf,緩存配置①,……,,#,設(shè)置,Web,緩存區(qū)名稱為,cache_one,,緩存空間大小為,2000MB,,,1,天清理一次緩存,單個文件超過,5m,不緩存。,,proxy_cache_path /data0/proxy_cache_path levels=1:2 keys_zone=cache_one:2000m inactive=1d max_size=5m;,,,#,注:,proxy_temp_path,和,proxy_cache_path,指定的路徑必須在同一分區(qū),,proxy_temp_path /data0/proxy_temp_path;,,,upstrea

16、m my_server_pool {,,server 192.168.1.2:80 weight=1 max_fails=2 fail_timeout=30s;,,server 192.168.1.3:80 weight=1 max_fails=2 fail_timeout=30s;,,},,……,,反向代理中的,Nginx.conf,緩存配置②,server,,{,,listen 80;,,server_name ;,,location /,,{,,proxy_set_header Host $host;,,proxy_set_header X-Forwarded-F

17、or $remote_addr;,,proxy_pass http://my_server_pool;,,},,location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|js|css)$,,{,,#,對圖片、,JS,、,CSS,進行緩存,使用,Web,緩存區(qū),cache_one,,proxy_cache cache_one;,,,反向代理中的,Nginx.conf,緩存配置③,,#,對不同,HTTP,狀態(tài)碼緩存設(shè)置不同的緩存時間,,,proxy_cache_valid 200 10m;,,proxy_cache_valid 304 3m;,,proxy_cache

18、_valid 301 302 1h;,,proxy_cache_valid any 1m;,,,,#,設(shè)置,Web,緩存的,Key,值,,Nginx,根據(jù),Key,值,md5,哈希存儲緩存,這里根據(jù)“域名、,URI,、客戶端請求,Header,頭中的,If-Modified-Since,信息”組合成,Key,。,,,proxy_cache_key $host$request_uri$http_if_modified_since;,,,,#,反向代理,訪問后端內(nèi)容源服務(wù)器,,,proxy_set_header Host $host;,,proxy_set_header X-Forwarde

19、d-For $remote_addr;,,proxy_pass http://my_server_pool;,,},,access_log off;,,},Nginx,緩存功能的優(yōu)點,對于修改實時性要求不高的圖片、,Flash,、,CSS,樣式文件、,JavaScript,文件,可以在,Nginx,反向代理,(,負載均衡,),服務(wù)器上設(shè)置緩存,不用每次請求都轉(zhuǎn)發(fā)到后端,Web,服務(wù)器,加快了響應速度。,,減少了,Nginx,與后端,Web,服務(wù)器的連接數(shù),提高了,Nginx,處理性能。,Nginx,的,Rewrite,重寫規(guī)則,,Nginx Rewrite,規(guī)則相關(guān)指令,Nginx Rew

20、rite,規(guī)則相關(guān)指令有,if,、,rewrite,、,set,、,return,、,break,等,其中,rewrite,是最關(guān)鍵的指令。一個簡單的,Nginx Rewrite,規(guī)則語法如下:,,rewrite ^/b/(.*)\.html /play.php?video=$1 break;,,,如果加上,if,語句,示例如下:,,if (!-f $request_filename),,{,,rewrite ^/img/(.*)$ /site/$host/images/$1 last;,,},,Nginx,與,Apache,的,Rewrite,規(guī)則實例對比①,簡單的,Nginx,和,Ap

21、ache,重寫規(guī)則區(qū)別不大,基本上能夠完全兼容。例如:,,Apache Rewrite,規(guī)則:,,RewriteRule ^/(mianshi|xianjing)/$ /zl/index.php?name=$1 [L],,RewriteRule ^/ceshi/$ /zl/ceshi.php [L],,RewriteRule ^/(mianshi)_([a-zA-Z]+)/$ /zl/index.php?name=$1_$2 [L],,RewriteRule ^/pingce([0-9]*)/$ /zl/pingce.php?id=$1 [L],,,Nginx Rewrite,規(guī)則:,

22、,rewrite ^/(mianshi|xianjing)/$ /zl/index.php?name=$1 last;,,rewrite ^/ceshi/$ /zl/ceshi.php last;,,rewrite ^/(mianshi)_([a-zA-Z]+)/$ /zl/index.php?name=$1_$2 last;,,rewrite ^/pingce([0-9]*)/$ /zl/pingce.php?id=$1 last;,,,由以上示例可以看出,,Apache,的,Rewrite,規(guī)則改為,Nginx,的,Rewrite,規(guī)則,其實很簡單:,Apache,的,Rewrit

23、eRule,指令換成,Nginx,的,rewrite,指令,,Apache,的,[L],標記換成,Nginx,的,last,標記,中間的內(nèi)容不變。,,Nginx,與,Apache,的,Rewrite,規(guī)則實例對比②,如果,Apache,的,Rewrite,規(guī)則改為,Nginx,的,Rewrite,規(guī)則后,使用,nginx -t,命令檢查發(fā)現(xiàn),nginx.conf,配置文件有語法錯誤,那么可以嘗試給條件加上引號。例如一下的,Nginx Rewrite,規(guī)則會報語法錯誤:,,,rewrite ^/([0-9]{5}).html$ /x.jsp?id=$1 last;,,,加上引號就正確了:,,

24、rewrite "^/([0-9]{5}).html$" /x.jsp?id=$1 last;,,Nginx,與,Apache,的,Rewrite,規(guī)則實例對比③,Apache,與,Nginx,的,Rewrite,規(guī)則在,URL,跳轉(zhuǎn)時有細微的區(qū)別:,,,Apache Rewrite,規(guī)則:,,RewriteRule ^/html/tagindex/([a-zA-Z]+)/.*$ /$1/ [R=301,L],,,Nginx Rewrite,規(guī)則:,,rewrite ^/html/tagindex/([a-zA-Z]+)/.*$ http://$host/$1/ permanent;

25、,,,以上示例中,我們注意到,,Nginx Rewrite,規(guī)則的置換串中增加了“,http://$host”,,這是在,Nginx,中要求的。,,Nginx,與,Apache,的,Rewrite,規(guī)則實例對比④,另外,,Apache,與,Nginx,的,Rewrite,規(guī)則在變量名稱方面也有區(qū)別,例如:,,,Apache Rewrite,規(guī)則:,,RewriteRule ^/user/login/$ /user/login.php?login=1&forward=http://%{HTTP_HOST} [L],,,Nginx Rewrite,規(guī)則:,,rewrite ^/user/lo

26、gin/$ /user/login.php?login=1,,Nginx,與,Apache,的,Rewrite,規(guī)則實例對比⑤,Apache,與,Nginx Rewrite,規(guī)則的一些功能相同或類似的指令、標記對應關(guān)系:,,,Apache,的,RewriteCond,指令對應,Nginx,的,if,指令;,,Apache,的,RewriteRule,指令對應,Nginx,的,rewrite,指令;,,Apache,的,[R],標記對應,Nginx,的,redirect,標記;,,Apache,的,[P],標記對應,Nginx,的,last,標記;,,Apache,的,[R,L],標記對應,Ng

27、inx,的,redirect,標記;,,Apache,的,[P,L],標記對應,Nginx,的,last,標記;,,Apache,的,[PT,L],標記對應,Nginx,的,last,標記;,,Nginx,與,Apache,的多條件,Rewrite,示例①,允許指定的域名訪問本站,其他域名一律跳轉(zhuǎn)到,,,Apache Rewrite,規(guī)則:,,RewriteCond %{HTTP_HOST} ^(.*?)\.domain\.com$,,RewriteCond %{HTTP_HOST} !^qita\.domain\.com$,,RewriteCond %{DOCUMENT_ROOT

28、}/market/%1/index.htm -f,,RewriteRule ^/wu/$ /market/%1/index.htm [L],,,Nginx,的,if,指令不支持嵌套,也不支持,AND,、,OR,等多條件匹配,相比于,Apache,的,RewriteCond,,顯得麻煩一些,但是,我們可以通過,下一頁,的,Nginx,配置寫法來實現(xiàn)這個示例:,Nginx,與,Apache,的多條件,Rewrite,示例②,Nginx Rewrite,規(guī)則:,,if ($host ~* ^(.*?)\.domain\.com$),,{,,set $var_wupin_city $1;,,set $

29、var_wupin '1';,,},,if ($host ~* ^qita\.domain\.com$),,{,,set $var_wupin '0';,,},,if (!-f $document_root/market/$var_wupin_city/index.htm),,{,,set $var_wupin '0';,,},,if ($var_wupin ~ '1'),,{,,rewrite ^/wu/$ /market/$var_wupin_city/index.htm last;,,},Nginx,與金山逍遙,TCSQL,的配合,,一般數(shù)據(jù)庫的緩存類型,一般數(shù)據(jù)庫緩存分為四種:,,1,

30、、,Key/Value,單個對象緩存,,,如,Memcached,,2,、,列表緩存,,,就像論壇里帖子的列表,,3,、,記錄條數(shù)的緩存,,,比如一個論壇板塊里有多少個帖子,這樣才方便實現(xiàn)分頁。,,4,、,復雜一點的,group,,,sum,,,count,查詢,,,比如一個論壇里按點擊數(shù)排名的最,HOT,的帖子列表。,,第一種比較好實現(xiàn),后面三種比較麻煩。,什么是,TCSQL,實時列表緩存數(shù)據(jù)庫?,TCSQL,是金山逍遙網(wǎng)技術(shù)支持部平臺組以,Tokyo Cabinet DBM,為底層存儲與索引,結(jié)合類似,Memcached,的,Key-Value,內(nèi)存對象緩存,借鑒,SQL,語句的,SELE

31、CT,、,INSERT,、,UPDATE,、,DELETE,思想與功能開發(fā)的實時列表緩存數(shù)據(jù)庫,可實現(xiàn)對,列表頁數(shù)據(jù),、,記錄條數(shù),的實時緩存。,,TCSQL,采用,HTTP GET/POST,協(xié)議+,JSON,數(shù)據(jù)交換格式在客戶端、服務(wù)器端之間進行數(shù)據(jù)交互。,,利用我們編寫的,MySQL UDF,擴展,+,觸發(fā)器,我們可以在,MySQL,的某張表發(fā)生插入、更新、刪除操作時,自動將數(shù)據(jù)同步到,TCSQL,數(shù)據(jù)庫,使得,TCSQL,可以當,MySQL,從庫一樣使用。,,TCSQL,的查詢速度,TCSQL,在,10000,并發(fā)連接情況下的查詢速度(服務(wù)器為浪潮,NF190,服務(wù)器,兩顆雙核,Xeo

32、n(TM) CPU 2.80GHz,、,4GB,內(nèi)存、,1,萬轉(zhuǎn),SCSI,硬盤。):,,主鍵查詢并取出倒序第,1,條記錄(“,=”,運算):,12155,次請求,/,秒,,其他索引鍵查詢并取出倒序第,1,條記錄(“,=”,運算):,11897,次請求,/,秒,,,TCSQL,的查詢速度,根據(jù)復合條件查詢并取出倒序前,10,條記錄:,8778,次請求,/,秒,(相當于,SELECT * FROM table WHERE dateline >=,隨機時間戳,AND idtype = ',變換的文本,' ORDER BY pkey DESC LIMIT 0,10,),,統(tǒng)計符合查詢條件的記錄數(shù)量:

33、,9160,次請求,/,秒,(相當于,SELECT count(*) FROM table WHERE dateline >=,隨機時間戳,AND idtype = ',變換的文本,',),找出瓶頸,瀏覽器端,--,查詢,-->,服務(wù)器端,Nginx + PHP + TCSQL,,Nginx 4000~13000,請求數(shù),/,秒,,PHP 500~1500,請求數(shù),/,秒,,TCSQL 5000~15000,請求數(shù),/,秒,,,位于中間的,PHP(FastCGI),不在一個量級上,成為列表頁查詢請求的最大瓶頸。,,,拋棄制約性能的,PHP,中間層,瀏覽器端,JavaScript,,--,查詢,-->,服務(wù)器端,Nginx(rewrite,重寫規(guī)則、,proxy_pass,反向代理,) + TCSQL,,拋棄了中間制約整體性能的,PHP,層。,,運行于瀏覽器端的,JavaScript,代碼通過,Nginx,直接查詢,TCSQL,數(shù)據(jù)庫,取得數(shù)據(jù)并在網(wǎng)頁顯示。,,利用,Nginx,的,rewrite,重寫規(guī)則控制對,TCSQL,的訪問權(quán)限。,謝謝!,,

展開閱讀全文
溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!

五月丁香婷婷狠狠色,亚洲日韩欧美精品久久久不卡,欧美日韩国产黄片三级,手机在线观看成人国产亚洲