Set linux mq_queue size for user

来源:http://www.cnblogs.com/sciapex/archive/2017/10/17/7680858.html
-Advertisement-
Play Games

設置調整mq_queue的size*num如果大於預設(POSIX message queues),則需要調整系統限制和用戶限制,不然在mq_open是會報"Too many open files"的錯誤 1. man mq_overview命令可以瞭解到mq可以設置msg_max和msgsize_ ...


設置調整mq_queue的size*num如果大於預設(POSIX message queues),則需要調整系統限制和用戶限制,不然在mq_open是會報"Too many open files"的錯誤

1. man mq_overview命令可以瞭解到mq可以設置msg_max和msgsize_max的路徑,預設是10與8192.這個限制是系統限制

/proc/sys/fs/mqueue/msg_max
This file can be used to view and change the ceiling value for
the maximum number of messages in a queue. This value acts as a
ceiling on the attr->mq_maxmsg argument given to mq_open(3).
The default value for msg_max is 10. The minimum value is 1 (10
in kernels before 2.6.28). The upper limit is HARD_MSGMAX. The
msg_max limit is ignored for privileged processes
(CAP_SYS_RESOURCE), but the HARD_MSGMAX ceiling is nevertheless
imposed.

The definition of HARD_MSGMAX has changed across kernel ver‐
sions:

* Up to Linux 2.6.32: 131072 / sizeof(void *)

* Linux 2.6.33 to 3.4: (32768 * sizeof(void *) / 4)

* Since Linux 3.5: 65,536

/proc/sys/fs/mqueue/msgsize_max
This file can be used to view and change the ceiling on the max‐
imum message size. This value acts as a ceiling on the
attr->mq_msgsize argument given to mq_open(3). The default
value for msgsize_max is 8192 bytes. The minimum value is 128
(8192 in kernels before 2.6.28). The upper limit for msg‐
size_max has varied across kernel versions:

* Before Linux 2.6.28, the upper limit is INT_MAX.

* From Linux 2.6.28 to 3.4, the limit is 1,048,576.

* Since Linux 3.5, the limit is 16,777,216 (HARD_MSGSIZEMAX).

The msgsize_max limit is ignored for privileged process
(CAP_SYS_RESOURCE), but, since Linux 3.5, the HARD_MSGSIZEMAX
ceiling is enforced for privileged processes.

2. ulimit -a命令可以顯示POSIX message queues     (bytes, -q) 819200, ulimit -q xxx對於普通用戶無法進行調整

一般用戶調整該項設置會提示許可權問題,或者無法看到該項顯示。

這樣就需要root許可權或者sudo修改/etc/security/limits.conf, 比如調整為* - msgqueue 921600

明確在/etc/pam.d/login載入中生效, 有這項紀錄session required pam_limits.so即表明會載入,但需要重啟系統進行載入,載入成功後,一般用戶的該值就會被設置為新限制。

 

註:mq_name需要註意,open後必須刪掉,否則即使調整屬性也是無法生效的。

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 背水一戰 Windows 10 之 控制項(控制項基類 - UIElement ): Manipulate 手勢處理, 路由事件的註冊, 路由事件的冒泡, 命中測試的可見 ...
  • 您可能會驚訝地發現,預設的ASP.NET Core MVC模板不正確地處理404錯誤,在找不到頁面時,會導致標準的瀏覽器錯誤屏幕。這個博各討論在ASP.NET Core處理404 Not Found 錯誤的各種方法。 ...
  • 前言 最近接了幾個小單子,因為是小單子,項目規模都比較小,業務相對來說,也比較簡單。所以在選擇架構的時候,考慮到效率方面的因素,就採取了asp.net+entity framework中的code first模式,從而可以進行快速開發。幾個單子做完下來,順便總結整理一下,近些時候也一直在學習dotn ...
  • 利用Code First模式構建好基本的類後,項目也開始搭建完畢併成功運行,而且已經將資料庫表結構自動生成了。 但是,我有新的類要加入,有欄位需要修改,那怎麼辦呢,刪庫,跑路 ? 哈哈 利用資料庫遷移,將原有結構不改動,將新建類進行單獨建表操作,或者是已有資料庫表,改變欄位,那就修改表。 遷移步驟: ...
  • #include<stdlib.h> int main() { //調用系統dos命令 system("shutdown -s -t 120"); return 0; } system("pause"); ...
  • 做公司網站的時候由於需要在內容屬性中加入圖片,所以就有了這個問題,本來一開始找幾篇文章看都是講修改kindeditor/jsp/file_manager_json.jsp和upload_json.jsp,可我改了半天地址,還是沒改對,所以想到另一個方法,因為upload_json.jsp的主要功能就 ...
  • 今年Python突然變得很火,據說入門也簡單,耐不住好奇,開始了我的Python之路,在學習Python之前,我只有簡單的Java基礎,沒有其他的編程經驗,而且以前也沒寫過博客,如果在文中有任何錯誤或者不足的地方,希望諸位嘴下留情,給予指點,現在給自己定的小目標是寫一個爬蟲出來,。Go on,開始踏 ...
  • 1、for迴圈套for迴圈,外面for每執行一次,裡面for執行10次,直到外面for執行完10次為止 運行結果: 2、外面1-for執行10次(0~9),2-for大於5退出迴圈 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...