原创 kafka故障排查-consumer處理超時導致的異常

最近遇到一個kafka方面的問題,大致就是由於consumer處理業務超時,導致無法正常提交Offset,進而導致無法消費新消息的問題。下面我想從以下幾個方面對此次故障排查進行復盤分析:業務背景、問題描述、排查思路、經驗教訓。 一、業務背景

原创 Windows 使用ssh secure file transfer上傳文件到linux服務器

SSH Secure Shell Client是SSH命令行控制終端,你應該是用SSH Secure File Transfer Client傳輸文件。這裏只談論他的使用方法,關於SSH配置你再找其他文章。一、登陸方法你可以在登陸的SSH

原创 使用IDEA進行JAVA代碼的遠程Debug

在本地開發過程中,對代碼進行Debug能逐行對代碼邏輯進行調試,方便準備的排查問題。但是當代碼發佈到線上時,如果運行過程中出現異常,僅僅依靠日誌來排查問題的話,會比較耗時,而且經常由於日誌不全等原因而不能快速準確定位問題,而通過對JAVA代

原创 MySQL查詢語句中的IN 和Exists 對比分析

背景介紹 最近在寫SQL語句時,對選擇IN 還是Exists 猶豫不決,於是把兩種方法的SQL都寫出來對比一下執行效率,發現IN的查詢效率比Exists高了很多,於是想當然的認爲IN的效率比Exists好,但本着尋根究底的原則,我想知道這個

原创 HTTPS基本原理與應用

HTTP存在的問題1、無法保證訪問到受信網站當我們要訪問一個網站時,如何才能保證這個網站就是我們要的?假設場景如下:2、無法保證數據私密性和完整性HTTP協議的數據在傳輸過程中使用明文傳輸,很容易被抓取和篡改,可使用tcpdump工具進行驗

原创 eclipse中啓動spring-mvc項目時無法加載靜態文件的問題分析

問題表現:eclipse裏使用spring-mvc框架開發web項目,項目正常啓動後能訪問jsp頁面,但jsp頁面的網頁效果沒有生效,並提示jsp文件裏提示js找不到,404錯誤。(1)初步判斷:在瀏覽器裏debug時,jsp頁面提示js文

原创 我的友情鏈接

51CTO博客開發

原创 在Mac版本下的IDEA中設置代碼註釋模版

在使用IDEA開發的過程中,我們可以通過設置代碼註釋模版,實現註釋信息的自動補齊,提高編碼效率。我使用的是Mac電腦,就以Mac環境來進行說明吧。 在Mac上配置IDEA的代碼註釋模版,主要包括兩個部分:一個是File Head文件頭註釋,

原创 壓力測試過程中MySQL服務CPU佔用率過高的問題排查思路

〇、經驗總結: 在關注業務接口的TPS時,也要關注數據庫服務器的QPS。如果一個業務流程裏包含多條查詢,那麼業務接口TPS的上升對數據庫服務器QPS的放大效應會很明顯。 如果查詢結果集不大,儘量使用一條查詢語句,通過子查詢返回多個結果集,

原创 記一次Grpc接口壓力測試&性能調優

〇、經驗總結: 如果在壓測過程中,壓力始終上不去,可以考慮是施壓機器併發上不去,或者被壓機器請求處理不過來。 施壓上不去或者被壓機器請求處理不過來,是因爲機器CPU瓶頸?內存瓶頸?端口數量瓶頸?逐步排查定位。 類似於Grpc這類需要建立r

原创 聊聊JAVA虛擬機中的垃圾收集器

前言 JAVA虛擬機的垃圾收集器是虛擬機內存的清道夫,它的存在讓JAVA開發人員能將更多精力投入到業務研發上。瞭解垃圾收集器,並利用好這個工具,能更好的保障服務穩定性。這篇文章通過分析JAVA虛擬機內存模型,介紹垃圾收集器常用算法和收集器類

原创 根據已有的WSDL文件進行WebService服務開發和部署

如何根據WSDL文檔開發部署Web Service服務?WSDL文檔是描述Web Service接口該如何開發和部署的具體描述文檔,十分重要。一個接口的WSDL文檔裏會包含接口部署時的服務名(service name),接口的綁定信息,綁定

原创 Flume-ng安裝與使用

一、 Flume NG核心概念  二、 Flumen NG數據流模型Flume以agent爲最小的獨立運行單位。一個agent就是一個JVM。單agent由Source、Sink和Channel三大組件構成。         Flume的數

原创 記一次接口壓力測試與性能調優

〇、經驗總結 1.如果總的CPU佔用率偏高,且基本都被業務線程佔用時,CPU佔用率過高的原因跟JVM參數大小沒有直接關係,而跟具體的業務邏輯有關。2.當設置JVM堆內存偏小時,GC頻繁會導致業務線程停頓增多,TPS下降,最後CPU佔用率也低

原创 MySQL查詢語句中的IN 和Exists 對比分析

背景介紹 最近在寫SQL語句時,對選擇IN 還是Exists 猶豫不決,於是把兩種方法的SQL都寫出來對比一下執行效率,發現IN的查詢效率比Exists高了很多,於是想當然的認爲IN的效率比Exists好,但本着尋根究底的原則,我想知道這個