原创 JVM調優參考

一 知識背景新生代YGC:大多數對象在新生代中被創建,其中很多對象的生命週期很短。每次新生代的垃圾回收(Minor GC)後只有少量對象存活,所以選用複製算法,只需要少量的複製成本就可以完成回收。 新生代內又分三個區:一個Eden區,兩個S

原创 MySQL中的鎖(表鎖、行鎖)

MySQL中的鎖(表鎖、行鎖)鎖是計算機協調多個進程或純線程併發訪問某一資源的機制。在數據庫中,除傳統的計算資源(CPU、RAM、I/O)的爭用以外,數據也是一種供許多用戶共享的資源。如何保證數據併發訪問的一致性、有效性是所在有數據庫必須解

原创 腦裂的產生與解決方案

在高可用(HA)系統中,當聯繫2個節點的“心跳線”斷開時,本來爲一整體、動作協調的HA系統,就分裂成爲2個獨立的個體。由於相互失去了聯繫,都以爲是對方出了故障。兩個節點上的HA軟件像“裂腦人”一樣,爭搶“共享資源”、爭起“應用服務”,就會發

原创 分佈式事務解決方案

見於:https://blog.csdn.net/mine_song/article/details/64118963 CAP原則又稱CAP定理,指的是在一個分佈式系統中,Consistency(一致性)、 Availability(可用性

原创 堆內內存和堆外內存

堆外內存一直是Java業務開發人員難以企及的隱藏領域,究竟他是幹什麼的,以及如何更好的使用呢?那就請跟着我進入這個世界吧。 JVM 進程佔用大小一般約等於: heap + perm + thread stack + nio directbu

原创 系統瓶頸優化參考

1、cpu問題 考慮使用更高的cpu代替當前cpu。 對於多cpu,考慮cpu之間的負載分配 考慮在其他體系上設計系統,當前值。 2、內存和高速緩存 內存的優化包括操作系統,數據庫,應用程序的內存優化。 過多的分

原创 IOSTAT 分析性能

使用iostat分析IO性能iostat用於輸出CPU和磁盤I/O相關的統計信息. 1.不加選項執行iostat [patrickxu@vm1 ~]$ iostat Linux 2.6.32-279.19.3.el6.ucloud.x86_

原创 性能調優之dstat

CPU狀態:CPU的使用率。這項報告更有趣的部分是顯示了用戶,系統和空閒部分,這更好地分析了CPU當前的使用狀況。如果你看到"wait"一欄中,CPU的狀態是一個高使用率值,那說明系統存在一些其它問題。當CPU的狀態處在"waits"時,那

原创 性能調優之sar

sar(System ActivityReporter系統活動情況報告)是目前Linux上最爲全面的系統性能分析工具之一,可以從多方面對系統的活動進行報告,包括:文件的讀寫情況、系統調用的使用情況、磁盤I/O、CPU效率、內存使用狀況、進程

原创 淺談系統容量測試與容量規劃

在性能測試中,需要根據具體的性能需求和系統架構等情況,採用不同的測試策略,其中最常見的策略就有容量測試。 這篇博客,就來聊聊容量測試以及容量規劃的一些內容。。。 一、什麼是容量?如何理解? 在開始之前,有一點需要知道:系統的處理能力是有限的

原创 AIO,BIO,NIO

前言https://www.cnblogs.com/mao3714/p/8184262.html

原创 性能調優之mpstat

mpstat 是實時系統監控工具。其報告與CPU的一些統計信息,這些信息存放在/proc/stat文件中。在多CPUs系統裏,其不但能查看所有CPU的平均狀況信息,而且能夠查看特定CPU的信息可以查看多核心cpu中每個計算核心的統計數據;而

原创 IO多路複用機制詳解

https://www.cnblogs.com/welen/articles/5385837.html 服務器端編程經常需要構造高性能的IO模型,常見的IO模型有四種: (1)同步阻塞IO(Blocking IO):即傳統的IO模型。 (2

原创 常見的系統瓶頸

一、數據庫 工作任務內存超過可用的RAM內存 長/短查詢 寫入衝突 大連接(join)佔用內存 虛擬化 共享一個HDD、磁盤尋死(disk seek death) 在雲端網絡I/O波動二、編程 線程:死鎖、調試、非線性擴展等 事件

原创 性能調優之vmstat

vmstat是Virtual Meomory Statistics(虛擬內存統計)的縮寫,可對操作系統的虛擬內存、進程、IO讀寫、CPU活動等進行監視。它是對系統的整體情況進行統計,不足之處是無法對某個進程進行深入分析。 指令所在路徑:/