国产+高潮+在线,国产 av 仑乱内谢,www国产亚洲精品久久,51国产偷自视频区视频,成人午夜精品网站在线观看

使用nginx代理到webman,download()方法下載文件間歇性失敗

西湖的水我的淚

問(wèn)題描述

使用ngxin反向代理到webman服務(wù)的8787端口,webman提供了一個(gè)下載功能,使用的response()->download()方法下載大小超過(guò)2M的文件,16個(gè)進(jìn)程,前端使用window.open()打開(kāi)該鏈接下載文件,會(huì)間歇性出現(xiàn)下載失敗的問(wèn)題,大多數(shù)時(shí)候可以,但是不穩(wěn)定,不時(shí)出現(xiàn)下載失敗的情況。
這個(gè)下載服務(wù)是收費(fèi)的必須要穩(wěn)定運(yùn)行才行吖請(qǐng)大佬們幫忙看看是么子問(wèn)題,跪謝。

截圖報(bào)錯(cuò)信息里報(bào)錯(cuò)文件相關(guān)代碼

nginx代理配置:

CleanShot 2022-10-21 at 18.14.35@2x.png截圖

webman代碼:

CleanShot 2022-10-21 at 18.22.34@2x.png截圖

前端:
下載的其實(shí)是同一個(gè)文件,間歇性失敗

CleanShot 2022-10-21 at 18.24.01@2x.png截圖

nginx錯(cuò)誤日志:

CleanShot 2022-10-21 at 18.27.55@2x.png截圖

日志中的crit日志下載成功也會(huì)產(chǎn)生,error日志只有下載失敗時(shí)產(chǎn)生

操作系統(tǒng)及workerman/webman等框架組件版本

 macOS 13
 webman 1.4

搞定啦我來(lái)還愿來(lái)了謝謝各位大佬

事情是這樣的,雖然有個(gè)緩存目錄無(wú)權(quán)限報(bào)錯(cuò),但我測(cè)試了一下大概和這茬沒(méi)啥關(guān)系= =
主要還是代理緩存大小的問(wèn)題,我在nginx中使用如下配置解決了問(wèn)題

proxy_buffering  on;
proxy_buffer_size 500M;
proxy_buffers 4 500M;
proxy_busy_buffers_size 500M;
proxy_temp_file_write_size 500M;

個(gè)人猜測(cè)問(wèn)題是這樣產(chǎn)生的,nginx反向代理到webman,因?yàn)榇淼氖潜镜囟丝冢詗ebman很快就把所有的內(nèi)容都交付給了nginx了并斷開(kāi)了和nginx的連接;但是nginx默認(rèn)的代理緩存很小,只保存了webman交付內(nèi)容的很少一部分,然后就被webman斷開(kāi)了連接,nginx無(wú)法獲取到剩下的內(nèi)容,因此報(bào)了[上游鏈接過(guò)早斷開(kāi)]的錯(cuò)誤,這里我把代理緩存加到500M就可以了,具體加到多少根據(jù)實(shí)際需求調(diào)節(jié),我這里是需要測(cè)試一個(gè)400多M的壓縮包

2181 4 2
4個(gè)回答

six

webman debug方式運(yùn)行看下,可能報(bào)錯(cuò)了

  • 西湖的水我的淚 2022-10-21

    = =就是在debug模式下運(yùn)行的,然而在命令行中也沒(méi)有報(bào)錯(cuò),在webman的運(yùn)行日志中也一切正常= =,我懷疑是download方法大于2m的文件異步加載導(dǎo)致的這個(gè)問(wèn)題,不確定

  • six 2022-10-21

    不走nginx,直接用8787端口下載看看有沒(méi)問(wèn)題

  • 西湖的水我的淚 2022-10-21

    直接走8787端口沒(méi)問(wèn)題

  • 西湖的水我的淚 2022-10-21

    我測(cè)試了一下,基本可以確定就是nginx代理的問(wèn)題,直接訪(fǎng)問(wèn)8787端口完全沒(méi)問(wèn)題,走nginx代理就很容易復(fù)現(xiàn)這個(gè)問(wèn)題

  • liziyu 2022-10-22

    二者之間通訊問(wèn)題

  • 西湖的水我的淚 2022-10-24

    謝謝大佬,搞定了,文章已更新,共勉

mine

nginx配置,if判斷那里加上client_max_body_size 200M; 試試。

tanhongbin

nginx 配置代理使用長(zhǎng)鏈接,估計(jì)是有超時(shí)問(wèn)題

mon

nginx server 里面加上 proxy_set_header connection keep-alive

年代過(guò)于久遠(yuǎn),無(wú)法發(fā)表回答
??