Linux核心高效能優化【生產環境例項】
話不多說,直接上線上伺服器的sysctl.conf檔案,當然,這是前輩大牛的功勞:
#---核心優化開始--------
# 核心panic時,1秒後自動重啟
kernel.panic = 1
# 允許更多的PIDs (減少滾動翻轉問題); may break some programs 32768
kernel.pid_max = 32768
# 核心所允許的最大共享記憶體段的大小(bytes)
kernel.shmmax = 4294967296
# 在任何給定時刻,系統上可以使用的共享記憶體的總量(pages)
kernel.shmall = 1073741824
# 設定程式core時生成的檔名格式
kernel.core_pattern = core_%e
# 當發生oom時,自動轉換為panic
vm.panic_on_oom = 1
# 表示強制Linux VM最低保留多少空閒記憶體(Kbytes)
vm.min_free_kbytes = 1048576
# 該值高於100,則將導致核心傾向於回收directory和inode cache
vm.vfs_cache_pressure = 250
# 表示系統進行交換行為的程度,數值(0-100)越高,越可能發生磁碟交換
vm.swappiness = 20
# 僅用10%做為系統cache
vm.dirty_ratio = 10
# 增加系統檔案描述符限制 2^20-1
fs.file-max = 1048575
# 網路層優化
# listen()的預設引數,掛起請求的最大數量,預設128
net.core.somaxconn = 1024
# 增加Linux自動調整TCP緩衝區限制
net.core.wmem_default = 8388608
net.core.rmem_default = 8388608
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
# 進入包的最大裝置佇列.預設是300
net.core.netdev_max_backlog = 2000
# 開啟SYN洪水攻擊保護
net.ipv4.tcp_syncookies = 1
# 開啟並記錄欺騙,源路由和重定向包
net.ipv4.conf.all.log_martians = 1
net.ipv4.conf.default.log_martians = 1
# 處理無源路由的包
net.ipv4.conf.all.accept_source_route = 0
net.ipv4.conf.default.accept_source_route = 0
# 開啟反向路徑過濾
net.ipv4.conf.all.rp_filter = 1
net.ipv4.conf.default.rp_filter = 1
# 確保無人能修改路由表
net.ipv4.conf.all.accept_redirects = 0
net.ipv4.conf.default.accept_redirects = 0
net.ipv4.conf.all.secure_redirects = 0
net.ipv4.conf.default.secure_redirects = 0
# 增加系統IP埠限制
net.ipv4.ip_local_port_range = 9000 65533
# TTL
net.ipv4.ip_default_ttl = 64
# 增加TCP最大緩衝區大小
net.ipv4.tcp_rmem = 4096 87380 8388608
net.ipv4.tcp_wmem = 4096 32768 8388608
# Tcp自動視窗
net.ipv4.tcp_window_scaling = 1
# 進入SYN包的最大請求佇列.預設1024
net.ipv4.tcp_max_syn_backlog = 8192
# 開啟TIME-WAIT套接字重用功能,對於存在大量連線的Web伺服器非常有效。
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_tw_reuse = 0
# 表示是否啟用以一種比超時重發更精確的方法(請參閱 RFC 1323)來啟用對 RTT 的計算;為了實現更好的效能應該啟用這個選項
net.ipv4.tcp_timestamps = 0
# 表示本機向外發起TCP SYN連線超時重傳的次數
net.ipv4.tcp_syn_retries = 2
net.ipv4.tcp_synack_retries = 2
# 減少處於FIN-WAIT-2連線狀態的時間,使系統可以處理更多的連線。
net.ipv4.tcp_fin_timeout = 10
# 減少TCP KeepAlive連線偵測的時間,使系統可以處理更多的連線。
# 如果某個TCP連線在idle 300秒後,核心才發起probe.如果probe 2次(每次2秒)不成功,核心才徹底放棄,認為該連線已失效.
net.ipv4.tcp_keepalive_time = 300
net.ipv4.tcp_keepalive_probes = 2
net.ipv4.tcp_keepalive_intvl = 2
# 系統所能處理不屬於任何程序的TCP sockets最大數量
net.ipv4.tcp_max_orphans = 262144
# 系統同時保持TIME_WAIT套接字的最大數量,如果超過這個數字,TIME_WAIT套接字將立刻被清除並列印警告資訊。
net.ipv4.tcp_max_tw_buckets = 20000
# arp_table的快取限制優化
net.ipv4.neigh.default.gc_thresh1 = 128
net.ipv4.neigh.default.gc_thresh2 = 512
net.ipv4.neigh.default.gc_thresh3 = 4096
#------核心優化結束--------
更多linux核心引數解釋說明,請看:
本文出自 “楊雲” 部落格,轉載請與作者聯絡!
相關推薦
Linux核心高效能優化【生產環境例項】
話不多說,直接上線上伺服器的sysctl.conf檔案,當然,這是前輩大牛的功勞: #---核心優化開始-------- # 核心panic時,1秒後自動重啟 kernel.panic = 1 # 允許更多的PIDs (減少滾動翻轉問題); may brea
【生產環境部署】部署專案到生產環境Linux下
以前自己寫過一個開源的專案,沒部署到線上環境,藉此機會熟悉下線上部署的流程 1、Linux上安裝資料庫MySQL,建立一個數據庫database 名 Mxonline 2、使用遠端工具 Navicat Premium 登入Linux資料庫上,並把本地已經跑好的資料庫表同步傳輸到&nbs
轉載 -- NodeJs【生產環境】最佳實踐:效能和可靠性
// expressjs.com // Production best practices: performance and reliability 看過了,基本理解 // 這篇文章是expressjs官網的文章,非常棒,回答了用nodejs的過程中的一些
阿里雲Linux(Centos6.5)配置java生產環境
配了好幾次Linux生產環境,每次都是翻人家部落格,我覺得我有必要寫個部落格,內容包括,java環境安裝,mysql資料庫安裝配置,tomcat安裝配置。 原料 1.Centos6.5 系統64位 2.putty,經典的ssh連線工具 java環
Linux 核心網路優化
5) /proc/sys/net/ipv4/inet_peer_gc_maxtime 廢物收集(GC)通過的最大間隔,這個間隔會影響到緩衝池中記憶體的低壓力。 該值 以 jiffies為單位測量。 預設設定:120 6.3 TCP Variables 1) /proc/sys/net/ipv4/tcp_syn
Linux核心引數優化
在伺服器硬體資源額定有限的情況下,最大的壓榨伺服器的效能,提高伺服器的併發處理能力,是很多運維技術人員思考的問題。要提高Linux系統下的負載能力,可以使用nginx等原生併發處理能力就很強的web伺服器,如果使用Apache的可以啟用其Worker模式,來提高其併發處理
linux核心紅黑樹運用小例項
linux核心版本linux-3.10.36 在linux核心原始碼中,紅黑樹是一個比較獨立的模組,很容易將其剝離出來,拿到應用層使用。 結構 linux核心的rb_node結構體 struct rb_node { unsigned long
hbase表設計優化原則 ***** 生產環境中使用小結
精準 密碼學 表示 ems 格式 就會 特性 存儲 可能 2019/2/28 星期四 hbase表設計優化原則 https://www.cnblogs.com/qingyunzong/p/8696962.html表設計1、列簇設計 追求的原則是:在合理範圍內能盡量少的減
Mysql-高可用集群【生產環境-動態添加從庫】(四)
transacti bin-log 數據庫文件 不可 sta oca 主庫 art use 【主庫】-導出數據庫文件 // 導出數據 mysqldump -hlocalhost -umyuser -pAa123456 --default-character-set=utf8
linux賬號管理總結【未寫完】
linuxlinux賬號管理總結一、新增與刪除用戶1、useradd新增用戶 語法: useradd 用戶賬號名 [-u UID] [-g 初始用戶組] [-G 次要用戶組] [-mM] [-c 說明] [-d 主文件夾絕對路徑] [-s shell] -u: -g:2、相關文件1)
WebService核心文件【web-config.wsdd】調用操作
app names row data- esp scope ice tac namespace WebService核心文件【server-config.wsdd】詳解及調用示例 作者:瑪莎拉蒂-小賤人 一、準備工作 導入需要的jar包:
linux centos7 常用命令【systemctl替換service】
centos7 user 配置 fig linux c entos 端口 nes unit 看所有網卡IP地址——ip addr 啟動防火墻——systemctl start firewalld.service 停止防火墻——systemctl stop fir
LINUX 6——安裝samba【匿名用戶】訪問文件共享傳輸服務(新手詳解)
用戶訪問 密碼 water 修改配置 RoCE ima ngs 軟件包 末行模式 LINUX 6——安裝samba匿名用戶訪問文件共享傳輸服務 ----------------------------------------安裝環境---------------------
【C++綜合例項】陣列指標字串以及繼承派生:銀行賬戶管理系統
一個活期儲蓄賬戶包括: 資訊:賬號(id)、餘額(balance)、年利率(rate)等 操作:顯示賬戶資訊(show)、存款(deposit)、取款(withdraw)、結算利率(settle)等。 為此,我們定義了一個SavingAccount類:一開始id和日期date都是使用簡單
【web框架】【zheng學習筆記(一)】【本地環境搭建】
zheng專案是一個非常值得學習的web開發框架,在碼雲的web開發框架排名第一。特此記錄下學習過程。 zheng的簡介吧:https://gitee.com/shuzheng/zheng。 zheng是基於Spring+SpringMVC+Mybatis分散式敏捷開發系統架構,提供整套公共
天津seo優化【米神系統】帶來及時雨
【米神系統】告訴你為什麼要做天津seo優化 天津人的快板是出了名了,一個狗不理包子,通過一副快板,傳遍了大江南北。這種就是口頭宣傳了,聽得多了,大家就記住了。但是資訊時代,除了口頭宣傳,人們最常用的就是搜尋引擎了。什麼事情不知道,都要上網查一下。時間一久,大家
【以太坊】 【開發環境搭建】 testrpc測試環境
[testrpc 以太坊 區塊鏈 開發環境] 一、安裝truffle+testrpc開發和測試環境。truffle是開發環境,testrpc是測試環境。 1、安裝環境時需要git add-apt-repository ppa:git-core/ppa a
【BI應用例項】Tableau 分析工具促進國航 IT 與業務融合
為了加速業務與IT的融合、利用資料分析促進業務運營,自 2017 年開始中國國際航空股份有限公司(以下簡稱國航)與 Tableau 合作,通過分析報表的視覺化資料洞察為多個業務部門的運營決策提供支撐。 Tableau 自助式平臺一方面可以幫助資訊部門管理、推廣可信的資料
Springboot 2.0.x 簡單整合Rabbit MQ 並實現訊息傳送和消費【Windows 環境下】
文章目錄 Springboot 2.0.x 簡單整合Rabbit MQ 並實現訊息傳送和消費【Windows 環境下】 1、rabbit mq 基礎支援,安裝 Erlang 環境 2、安裝 ra
從零初始化一個Vue專案【vue環境搭建】
【nvm +node + npm + vue-cli 】完成vue專案初始化過程 後期可以自行安裝和使用webpack模板初始化vue專案 Node.js NPM安裝方式 1.直接使用安裝包進行傻瓜式單擊安裝,此方式比較簡單不推薦 後期更改node版本不方便 2.nvm (node.