爲防止濫用消耗過多機器資源,咱們對默認安裝的Logtail進行了一系列的資源限制。默認安裝的Logtail最多日誌採集速度爲20M/s,20個併發發送。html
其餘資源限制請參考:啓動參數 https://help.aliyun.com/document_detail/32278.html 中的默認配置。服務器
若是放開發送流控,Logtail默認單核的能力大體以下(具體根據不一樣正則、日誌類型、採集提取的key數量、機器配置等會有必定浮動):併發
極簡模式tcp |
正則模式性能 |
分隔符模式測試 |
JSON模式優化 |
||
單核能力spa (單核100%CPU)線程 |
採集速度日誌 |
100MB/s |
20MB/s |
35MB/s |
30MB/s |
內存佔用 |
80 |
80 |
80 |
80 |
|
採集速度 0.1 MB/s(200條/s) |
CPU佔用(單核) |
0.3% |
0.6% |
0.5% |
0.5% |
內存佔用 |
32 |
32 |
32 |
32 |
|
採集速度 1 MB/s(2000條/s) |
CPU佔用(單核) |
1.3% |
5.0% |
3.5% |
3.5% |
內存佔用 |
32 |
32 |
32 |
32 |
備註:測試環境
CPU :Intel(R) Xeon(R) CPU E5-2682 v4 @ 2.50GHz
MEM : 64GB
OS : Linux version 2.6.32-220.23.2.ali1113.el5.x86_64
Logtail默認只開一個線程處理數據,若是開啓多核,性能會有提高,但並非線性關係,實測最多開到8個線程後,性能幾乎沒有上漲。
根據您的使用目的,合理選擇對應的日誌格式
可經過調整Logtail的啓動參數來放開默認的資源限制,下面咱們推薦2種配置方式:
sudo sysctl -w net.ipv4.tcp_tw_timeout=5
在配置文件末尾追加如下兩個參數,注意JSON需合法。
{ ... "max_bytes_per_sec" : 50000000, "send_request_concurrency" : 50 }
在配置文件末尾追加如下幾個參數,需保證,注意JSON需合法。
{ ... "cpu_usage_limit" : 5, "process_thread_count" : 4, "max_bytes_per_sec" : 50000000, "send_request_concurrency" : 50 }
原文連接 本文爲雲棲社區原創內容,未經容許不得轉載。