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

webman壓測和LUMEN壓測的問題

Mr_Deng


左圖:通過nginx反代壓測webman,該接口有一個數(shù)據(jù)庫查詢
右圖:我司使用的lumen框架,同樣nginx虛擬域名訪問

環(huán)境:CPU Intel(R) Core(TM) i5-8259U CPU @ 2.30GHz 16G
wsl,LNMP包,未做內(nèi)核優(yōu)化

麻煩問下,lumne本就如此不堪,還是其它原因呢?

3083 4 0
4個回答

xianrenqh

啊這,我也測試了一下, 一個是webman的, 一個是thinkphp6的:

webman

thinkphp6

  • Mr_Deng 2022-07-01

    你怎么測的,webman這么低

  • Tinywan 2022-07-01

    237,這....

  • 法師 2022-07-02

    看起來是windows?windows下webman是單進程的,性能肯定沒多進程好

  • MarkGo 2022-07-02

    可能外網(wǎng)測或db瓶頸也說不清,看對比就好了

  • xianrenqh 2022-07-04

    Linux服務器上跑的, Intel(R) Xeon(R) Gold 6148 CPU @ 2.40GHz;2核4G的配置,求問 webman為啥這么低啊

  • xianrenqh 2022-07-04

    Nginx反代了

  • Mr_Deng 2022-07-04

    壓測命令,還有反代配置看看,說不定有問題,我開始在本地反代,就是沒配置好,也很低

  • tanhongbin 2022-07-06

    我也發(fā)現(xiàn)了,只要使用nginx 壓測性能就不好,單獨就非常好

  • 法師 2022-07-06

    nginx 代理記得加 keepalive 10000;,加上后飛一樣的感覺。另外也可以把nginx日志關閉,不然每次請求都寫日志到磁盤肯定慢

    upstream webman {
        server 127.0.0.1:8787;
        keepalive 10000;
    }
  • 晚安。 2022-07-06

    keepalive 大佬 加這個的意思是啥

  • 法師 2022-07-06

    讓nginx和webman保持長連接,否則每個請求都要和webman建立連接,然后斷開,性能巨差

  • tanhongbin 2022-07-07

    upstream httpds {
    server 127.0.0.1:8787;

    keepalive   1000;
    keepalive_timeout  65; 
    keepalive_requests 1000;
    keepalive_time 1h;

    }

  • xianrenqh 2022-07-07

    啊這, 加上了,性能還是起不來,不知道是不是哪配置的還不對

  • tanhongbin 2022-07-07

    重啟nginx

  • tanhongbin 2022-07-07

    就是這個配置項不知道配置多少合適?

  • 法師 2022-07-07

    keepalive 10000; 其它不用設置。可能你nginx哪里限制了請求量并發(fā)連接啥的。
    壓測內(nèi)網(wǎng)壓測,或者本機壓測,走外網(wǎng)壓測瓶頸在網(wǎng)絡,啥框架都很低。

  • tanhongbin 2022-07-07

    我再試試

  • MarkGo 2022-07-07

    keepalive 是保持連接,在keepalive期間返回結果后不會斷開連接,后續(xù)有新連接的時候可以直接使用,避免創(chuàng)建鏈接開銷;
    但需要分場景使用,如果前端是騰訊云的clb那keepalive不建議開啟,否則會導致一堆time_waits。
    另外你真的想優(yōu)化前提必須搞清楚瓶頸在哪啊。
    你可以創(chuàng)建一個新的webman不含任何業(yè)務代碼,壓測一下 看 有nginx和直連的區(qū)別。如果區(qū)別不大且qps符合需求的情況下,那你就沒必要去搞這個那個配置優(yōu)化了,作用不大。
    webman并不是能讓你的業(yè)務代碼加速,而是能保值你的業(yè)務代碼在最快的速度運行。
    比方
    1、你收到了請求后執(zhí)行了個sleep,非協(xié)程模式下就會導致后續(xù)請求阻塞,qps就上不去。
    2、你收到了請求后沒有任何阻塞通訊,那QPS基本等于你返回接收數(shù)據(jù)包大小和你機器帶寬的最大值。
    3、你收到請求查詢mysql,注意mysql是阻塞通訊的,其實就如第一點一樣的結果。
    最后你想找萬能狗皮膏藥黏貼上去是不可能的,不同場景優(yōu)化方式不同,無論哪種場景下進行優(yōu)化,必須找到瓶頸所在。

  • MarkGo 2022-07-07

    另外壓測結果是外網(wǎng)進行的吧?
    平均請求時間是4.213毫秒,傳輸速度是731.86 kb/s
    你的瓶頸是不是在網(wǎng)絡帶寬上?

    單次傳輸大小2765bytes 加上頭那些,當3kb算,
    1Mbps 大概 128/3 約等于 43 qps
    6Mbps 大概就 43*6 = 258
    而且由于128kbs是理論速度,實際未必能達到,所以如果你是外網(wǎng)壓測且?guī)捴挥?~7M的情況下,結果并無任何不妥。
    你的瓶頸是帶寬優(yōu)化配置不管用。

  • 法師 2022-07-07

    所以,優(yōu)化后的壓測結果如何?

  • xianrenqh 2022-07-07

    確實是帶寬的問題,帶寬到瓶頸了

  • tanhongbin 2022-07-07

    這個是真大佬呀,我走的是內(nèi)網(wǎng)測試的,然后就是nginx 代理 webman的 8888 ,webman是直接訪問8888端口,就是為了看一下nginx性能損耗,大佬你這qps這個是真牛,學習了

  • 法師 2022-07-07

    服務器配置是?優(yōu)化后webman和TP壓測QPS各多少?

  • MarkGo 2022-07-07

    其實真的建議用nginx/httpd之類的做一個反代,webman專注于動態(tài)請求的處理;
    加了nginx有損耗但一般不會太大,如果太大的話你可以關閉nginx的日志(訪問和錯誤)再試試。
    但是如果沒有了前端代理,當有大文件讀取的時候,webman要讀取文件發(fā)送給客戶端再結束連接,這樣的話容易導致阻塞。
    用nginx的話靜態(tài)直接nginx處理掉,動態(tài)丟給webman,能有效最大化利用webman的性能。

  • 842461193 2022-07-07

    學習了

  • MarkGo 2022-07-07

    手冊說webman發(fā)送大文件并不會阻塞
    確實并不阻塞,剛測試了開1進程下載1g文件,另外再訪問也能訪問正常。

  • owenzhang 2022-07-18

    @靜默 我加了 keepalive 10000;還是沒作用

法師

lumen開啟opcache了?開啟opcache試下。
基于php-fpm的框架性能都很低,和webman這種沒法比,webman 并發(fā)比laravel lumen這種高十倍甚至幾十倍都很正常。

  • 暫無評論
xianrenqh

  • 暫無評論
lavaman

一個常駐內(nèi)存,一個基于php-fpm 有百倍的差異很正常

  • Mr_Deng 2022-07-18

    這已經(jīng)五百多倍了...

年代過于久遠,無法發(fā)表回答
??