中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Postfix壓力自動適應配置的示例分析

發布時間:2021-09-15 17:27:15 來源:億速云 閱讀:148 作者:小新 欄目:大數據

這篇文章將為大家詳細講解有關Postfix壓力自動適應配置的示例分析,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

postfix負載過高的標識(Symptoms of Postfix SMTP server overload)

  • 客戶端連接過來后需要等待一段時間才能得到服務器回應的歡迎信息:“220 hostname.example.com ESMTP Postfix”

  • 服務器的日志里出現越來越多的類似日志:"lost connection after CONNECT", 一般這種情況是由于客戶端因等待太久而斷開了連接。

  • Postfix 2.3及以后的版本會在服務端口繁忙時輸出一條警告日志,類似如下:

  • Oct  3 20:39:27 spike postfix/master[28905]: warning: service "smtp"
     (25) has reached its process limit "30": new clients may experience
     noticeable delays
    Oct  3 20:39:27 spike postfix/master[28905]: warning: to avoid this
     condition, increase the process count in master.cf or reduce the
     service time per client
    Oct  3 20:39:27 spike postfix/master[28905]: warning: see
      http://www.postfix.org/STRESS_README.html for examples of
      stress-adapting configuration settings


     

自動適應壓力行為(Automatic stress-adaptive behavior)

當smtp服務器在面向"public"網絡的所有端口都變繁忙時,postfix將記錄一條warn日志,并使用參數"-o stress=yes" 重啟服務。如果服務只有本地的連接則不會啟用自動適應壓力的行為。在main.cf中,stress參數專門用來配置自動適應壓力的行為:

1 smtpd_timeout = ${stress?{10}:{300}}s
2 smtpd_hard_error_limit = ${stress?{1}:{20}}
3 smtpd_junk_command_limit = ${stress?{1}:{100}}
4 # Parameters added after Postfix 2.6:
5 smtpd_per_record_deadline = ${stress?{yes}:{no}}
6 smtpd_starttls_timeout = ${stress?{10}:{300}}s
7 address_verify_poll_count = ${stress?{1}:{3}}

stress后面第一個參數表示高負載時采用的參數值,第二個參數表示低負載時使用的參數。

同時為更多smtp客戶端提供服務(Service more SMTP clients at the same time)

為了服務更多的客戶端,可以提高smtp服務端進程的數量:通過修改main.cf的default_process_limit 或master.cf的maxproc參數:

 1 /etc/postfix/main.cf:
 2     # Raise the global process limit, 100 since Postfix 2.0.
 3     default_process_limit = 200
 4
 5 /etc/postfix/master.cf:
 6     # =============================================================
 7     # service type  private unpriv  chroot  wakeup  maxproc command
 8     # =============================================================
 9     # Raise the SMTP service process limit only.
10     smtp      inet  n       -       n       -       200     smtpd

進程越多則消耗的內存越多,可以通過使用cdb查詢表來代替hash,btree表來減小內存的使用。

提高對每個smtp客戶端的處理速度(Spend less time per SMTP client)

如果提高服務端進程的數量不可行,可以想辦法減少對每個smtp客戶端的響應延遲:

  • 消除對不可用的RBL服務的查詢

  • 消除對重復的RBL服務的查詢(比如一個rbl包含了另一個rbl的情況,只需要查詢包含的那個rbl即可)

  • 消除header_checks和body_checks,只保留少數針對最新蠕蟲的模式檢查即可。

  • 對header_checks和body_checks分組以減少不必要的模式匹配檢查。

主動斷開可疑客戶端的連接(Disconnect suspicious SMTP clients)

在高負載時,主動斷開可疑連接可以讓其他客戶端有連接進來的機會:

  • 使用"521"響應碼,可以讓postfix主動拒絕郵件的發送并馬上斷開與客戶端的連接,不需要等客戶端發送quit指令。

怎么識別當前是否已經啟用壓力自動適應行為(Detecting support for stress-adaptive behavior)

使用"ps -ef"命令查看smtpd進程,如果進程啟用了該模式,則會帶有"-o stress=" 或 "-o stress=yes"選項。

強制開啟或關閉壓力自動適應行為(Forcing stress-adaptive behavior on or off)

在master.cf中配置"-o stress=yes"命令行選項可以強制開啟該行為:

1 /etc/postfix/master.cf:
2     # =============================================================
3     # service type  private unpriv  chroot  wakeup  maxproc command
4     # =============================================================
5     # 
6     smtp      inet  n       -       n       -       -       smtpd
7         -o stress=yes
8         -o . . .

如果配置"-o stress="則表示永久關閉自動適應行為

關于“Postfix壓力自動適應配置的示例分析”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

介休市| 罗田县| 县级市| 新沂市| 兖州市| 五大连池市| 尼勒克县| 都匀市| 新野县| 宁都县| 克拉玛依市| 云龙县| 大余县| 阜城县| 华蓥市| 渭南市| 定兴县| 白山市| 宁远县| 瓮安县| 宜良县| 上思县| 平昌县| 平果县| 乃东县| 聂拉木县| 都安| 温宿县| 汉中市| 聂荣县| 荥经县| 宝丰县| 鄂托克前旗| 漯河市| 新乡县| 富锦市| 绥滨县| 丹凤县| 巩义市| 盐山县| 郸城县|