<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 41  文章 - 7  trackbacks - 0
    <2016年7月>
    262728293012
    3456789
    10111213141516
    17181920212223
    24252627282930
    31123456

    常用鏈接

    留言簿

    隨筆分類

    隨筆檔案

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    原文:http://www.rabbitmq.com/production-checklist.html
    介紹
    像RabbitMQ這樣的數據服務經常有許多的可調參數.某些配置對于開發環境來說是意義的,但卻不適合產品環境. 單個配置不能滿足每種使用情況. 因此,在進入產品環境時,評估配置是很重要的. 這就是本指南提供幫助的目的.
    虛擬主機,用戶,權限
    Virtual Hosts
    在單租戶環境中,例如,當RabbitMQ在產品環境中只致力于為某單個系統服務時,使用默認虛擬主機 (/)是非常好的.
    在多租戶環境中,為每個租戶/環境使用單獨的虛擬主機,如:project1_developmentproject1_productionproject2_developmentproject2_production, 等等.
    用戶
    在產品環境中,刪除默認用戶(guest). 默認情況下,默認用戶只能通過本地來連接, 因為它有眾所周的憑證.為了不啟用遠程連接,可考慮使用帶有administrative權限和生成密碼的獨立用戶來代替
    強烈建議在每個程序中使用單獨的用戶,例如,如果你有一個mobile app, 一個Web app, 和一個數據聚合系統, 你最好有3個獨立的用戶. 這會使許多事情變得更簡單:
    • 使 client 連接與程序相關聯
    • 使用細粒度的權限
    • 憑據翻滾(如. 周期性地或遭到破壞的情況下)
    如果有許多相同應用程序的實例,有一個更好安全性權衡(每一個實例的憑據)和方便的配置(共享一些或所有實例之間的一組憑據)。物聯網的應用涉及很多客戶執行相同或相似的功能,有固定的IP地址,它可以使用X509證書或源IP地址范圍驗證。
    資源限制
    當消費者跟不上的時候,RabbitMQ 使用Resource-driven alarms (資源驅動報警)來壓制(throttle)發布者. 在進入生產之前評估資源限制配置是重要的。
    內存
    默認情況下, RabbitMQ會使用可用RAM的40%. 這專門針對于那些運行RabbitMQ的節點,通常情況下,提高此限制是合理的. 然而,應注意的是,操作系統和文件系統的緩存也需要內存來運行。如果不這樣做,會由于操作系統交換導致嚴重的吞吐量下降,甚至導致操作系統會終止RabbitMQ過程的運行。
    下面是一些基本的指導方針,用于確定推薦的RAM limit:
    • 至少有128 MB
    • 當RAM達到4GB時,可配置為75%的RAM限制
    • 當RAM達到4GB-8GB時,可配置為80%的RAM限制
    • 當RAM達到8GB-16GB時,可配置為85%的RAM限制
    • 當RAM大于16GB時,可配置為90%的RAM限制
    高于0.9的值是很危險的,不推薦配置
    可用磁盤空間
    必要的可用磁盤空間可防止disk space alarms.(磁盤空間報警) .默認情況下,RabbitMQ始終需要 50 MiB的可用磁盤空間.在大多數Linux發行者,根據開發者的經驗,可將放置到小分區的/var 目錄下. 然而,對于產品環境來說,這不是一個推薦值, 因為它們可能明顯的更高的RAM 限制. 下面是一些基本的指導方針,如何確定有多少空閑磁盤空間是推薦的:
    • 至少有2 GB
    • 當限制為1到8GB的RAM時,可配置為RAM限制的50%
    • 當限制為8到32GB的RAM時,可配置為RAM限制的40%
    • 當限制超過32GB的RAM時,可配置為RAM限制的30%
    rabbit.disk_free_limit 配置可通過 {mem_relative, N}來完成,使其相對于RAM限制的百分比來計算. 例如, 使用{mem_relative, 0.5} 設為50%, {mem_relative, 0.25}設為25%等等.
    打開文件句柄限制
    操作系統限制了并發打開的文件句柄的最大數量,其中包括網絡套接字。確保您的限制設置得足夠高,以允許預期數量的并發連接和隊列。
    對于有效RabbitMQ用戶,確保你的環境允許至少50K的打開文件描述符,包括開發環境。
    作為經驗法則,并發連接數的95%乘以2再加上隊列的總數可以計算出打開文件句柄限制( multiple the 95th percentile number of concurrent connections by 2 and add total number of queues to calculate recommended open file handle limit). 值高于500K也是恰當地,它不會消耗太多的硬件資源,因此建議在生產環境中設置. 查看Networking guide 來了解更多信息.
    安全注意事項
    用戶和權限
    查看vhosts, users, 和 證書章節.
    Erlang Cookie
    在Linux 和BSD 系統中, 有必要限制只有運行RabbitMQ和rabbitmqctl工具的用戶才能訪問Erlang cookie.
    TLS
    如果有可能,我們建議使用LS connections, 至少要加密通信. Peer驗證(身份驗證)也被推薦 . 開發和QA 環境可使用self-signed TLS certificates. 當RabbitMQ和所有程序運行在可信網絡或隔離(使用像VMware NSX技術)環境中時,自簽名證書可以應用于產品環境.
    雖然RabbitMQ試圖提供一個默認的安全TLS 配置 (如.SSLv3是禁用的), 我們推薦評估TLS 版本和密碼套件. 請參考TLS guide 了解更多信息.
    網絡配置
    產品環境需要調整網絡配置.請參考 Networking Guide 來了解細節.
    自動連接恢復
    某些client libraries, 例如 Java.NET, 和 Ruby, 在網絡失敗后,支持自動連接恢復.如果client提供了這種功能,建議使用它來代替你自己的恢復機制.
    集群化考慮
    集群大小
    當確定集群大小時,需要重點考慮下面的幾個因素:
    • 希望的吞吐量
    • 希望的復制( mirrors的數目)
    • 數據局部性
    因為客戶端可以連接到任何節點,RabbitMQ可能需要進行集群間消息路由和內部操作。嘗試使消費者和生產者連接到同一個節點,如果可能的話:這將減少節點間的流量。 使消費者連接到持有隊列的master上(可使用HTTP API進行推斷),也是有幫助的.當考慮到數據局部性時,總的集群吞吐量可以達到不平凡的量。
    對于大多數環境中,鏡像超過一半的群集節點是足夠的。建議使用一個奇數的節點(3,5,等等)的集群。
    分區處理策略
    在用于產品環境之前,挑選partition handling strategy 是很重要的. 有疑問時,使用theautoheal策略。
    posted on 2016-07-30 16:47 胡小軍 閱讀(1658) 評論(0)  編輯  收藏 所屬分類: RabbitMQ
    主站蜘蛛池模板: 亚洲视频在线观看2018| 日韩毛片免费一二三| 亚洲理论精品午夜电影| 日韩吃奶摸下AA片免费观看| 老司机精品视频免费| 亚洲成熟xxxxx电影| 四色在线精品免费观看| 男女一进一出抽搐免费视频| 亚洲国产精品线观看不卡| 国产人妖ts在线观看免费视频| 免费看一区二区三区四区| 在线精品亚洲一区二区| 国产亚洲情侣一区二区无码AV| 91九色精品国产免费| 无码 免费 国产在线观看91| 久久99亚洲网美利坚合众国 | 久久久久国产精品免费看| 亚洲欧洲日韩国产一区二区三区| 国产午夜亚洲不卡| 成人特黄a级毛片免费视频| a级毛片无码免费真人久久| 亚洲精品精华液一区二区| 免费精品一区二区三区在线观看| 中文字幕在线免费视频| 无码亚洲成a人在线观看| 久久亚洲精品成人无码网站| 亚洲狠狠爱综合影院婷婷| 成人女人A级毛片免费软件| 免费无码av片在线观看| 免费视频精品一区二区| 亚洲狠狠色丁香婷婷综合| 色婷婷亚洲十月十月色天| 国产亚洲成人久久| 国产又长又粗又爽免费视频| 波多野结衣在线免费视频| 久久伊人免费视频| 国产日韩AV免费无码一区二区三区| 亚洲av无码一区二区三区四区| 亚洲国产精品人久久电影| 久热综合在线亚洲精品| 最新精品亚洲成a人在线观看|