這篇文章將為大家詳細講解有關innodb_thread_concurrency參數怎么配置,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
創(chuàng)新互聯公司是一家專注于成都網站設計、成都網站建設與策劃設計,臨淄網站建設哪家好?創(chuàng)新互聯公司做網站,專注于網站建設10多年,網設計領域的專業(yè)建站公司;建站業(yè)務涵蓋:臨淄等地區(qū)。臨淄做網站價格咨詢:028-86922220
innodb_thread_concurrency:
INNODB存儲引擎中允許的最大的線程并發(fā)數。
InnoDB使用操作系統(tǒng)線程來處理用戶事務請求,它是這樣工作的:當InnoDB收到一個用戶的請求時,如果已經超過innodb_thread_concurrency預先設置的并發(fā)線程數量,那么就會按照innodb_thread_sleep_delay預先設定的值休眠N秒,之后再次嘗試連接,重試兩次的機制是為了減少CPU上下文切換的次數,以降低CPU消耗。如果請求被接受了,則會獲得一個innodb_concurrency_tickets默認500次的通行證,在這些次數用完之前,該線程重新請求時無須再進行前面所說的innodb_thread_concurrency的檢查。如果還沒有被接受,那么就會進入隊列中,直到最終被處理掉。
該值建議設置如下:
當并發(fā)用戶線程數量小于64,建議設置innodb_thread_concurrency=0;
如果負載不穩(wěn)定,時而低,時而高到峰值,建議先設置innodb_thread_concurrency=128,并通過不斷的降低這個參數,96, 80, 64等等,直到發(fā)現能夠提供最佳性能的線程數,例如,假設系統(tǒng)通常有40到50個用戶,但定期的數量增加至60,70,甚至200。你會發(fā)現,性能在80個并發(fā)用戶設置時表現穩(wěn)定,如果高于這個數,性能反而下降。在這種情況下,建議設置innodb_thread_concurrency參數為80,以避免影響性能;
如果DB服務器上還允許其他應用,需要限制MySQL的線程使用情況,則可以設置可分配給DB的線程數,但是不建議DB上跑其他應用,也不建議這么設置,因為這樣可能導致數據庫沒有對硬件最優(yōu)使用;
設置過高值,可能會因為系統(tǒng)資源內部爭奪導致性能下降;
在大多數情況下,最佳的值是小于并接近虛擬CPU的個數;
定期監(jiān)控和分析DB,因為隨著數據庫負載的變化,業(yè)務的增加,innodb_thread_concurrency也需要動態(tài)的調整。
如果一個工作負載中,并發(fā)用戶線程的數量小于64,建議設置innodb_thread_concurrency=0;
關于“innodb_thread_concurrency參數怎么配置”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
網頁標題:innodb_thread_concurrency參數怎么配置
分享URL:http://jinyejixie.com/article36/jjeopg.html
成都網站建設公司_創(chuàng)新互聯,為您提供建站公司、企業(yè)建站、、品牌網站制作、網站排名、微信公眾號
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯