原创 華爲手機使用第三方桌面

手裏有個榮耀v10,系統爲EMUI 9。安裝了極簡桌面,準備給老人用。 但是華爲從EMUI 9開始,禁用了第三方桌面。 解決辦法: 打開開發者選項-USB調試,連接電腦; 在手機上安裝小黑屋。可以在這裏下載,https://www.

原创 Kafka transaction hanging causes consumer to stuck

Kafka事務未關閉導致消費者無法消費消息。 背景 最近遇到一個問題:有一個公用topic,很多應用都讀寫這個topic。從某個時間點開始,所有消費該topic的消費者(read_committed級別)都拉不到消息了。隨機看了一些應用的日

原创 protostuff deserialize empty collection null

protostuff反序列化空集合爲null。 問題描述 有一個class A,含一個集合字段。創建對象時,如果集合字段賦值empty(不是null),那麼反序列化後該字段變爲null。 public class A { List<

原创 如何確保kafka topic已經刪除

問題描述 TopicExistsException: Topic 'xxx' is marked for deletion. 在寫kafka工具時,有兩個方法:批量創建topic和批量刪除topic。 運維操作一般是,批量刪除一堆top

原创 在consumer producer運行時停止kafka服務端會怎樣

結論 服務端停止時,客戶端程序會報錯; 服務端啓動後,客戶端程序能繼續運行。也就是,消費者線程並未異常退出。 實驗步驟 (1)停止後,consumer和producer會報錯。 消費者: . ____ _

原创 在producer/consumer運行時刪除topic會怎麼樣

broker端有個參數(kafka_2.13-3.2.1/config/server.properties),auto.create.topics.enable,默認爲true。意思是,當生產者、消費者讀寫一個不存在的topic時,是否自動

原创 如何在Spring Boot代碼中執行sql腳本

在spring應用運行時,有一些建表語句,或則初始化數據,需要從sql腳本導入。 本文推薦以下兩種方法。 假設腳本位於/resources/ddl.sql 1 使用@sql註解 該註解可用於類和方法。 @Sql(scripts = {"/d

原创 Process Explorer檢測彈窗廣告的利器

有時候電腦右下角、正中間彈出的廣告,沒有任何logo和落款,不知道是哪個軟件搞的。這就好比捱了一拳,沒看見出拳的人。 微軟的一個大佬開發的 Process Explorer 功能強大,能解決這個問題。將工具欄上的瞄準鏡拖動到廣告彈窗上面即可

原创 Spring的依賴管理

SpringBoot依賴管理的能力 SpringBoot管理的依賴有1000多個,詳見Dependency Versions (spring.io)。這些組件,在和SpringBoot一起使用的時候,可以不指定版本,因爲SpringBoot

原创 Kafka 核心技術與實戰》學習筆記

簡介 Apach Kafka 是一款分佈式流處理框架,用於實時構建流處理應用。它有一個核心的功能廣爲人知,即作爲企業級的消息引擎被廣泛使用。 很多主流消息引擎系統都支持 JMS(Java Message Service)規範,比如 Acti

原创 Kafka事務不完全指南

Kafka的事務是什麼 生產者往多個topic裏面寫消息,要麼同時成功,要麼同時失敗。 爲什麼需要事務 消息系統有3種語義: 最多一次 最少一次 精確一次。Exactly Only Once 爲了實現精確一次的語義,Kafka必須引入事

原创 kafka offset爲什麼不連續

why kafka offset not sequential 未使用事務時,至少一次語義,消息重發時,會佔用offset 使用事務時,每次事務的commit/abort,都會往topic(每個分區?)寫一個標誌,這個標誌會佔用offse

原创 使用python爬取jar包、npm包、go包的最新版本

場景 公司內網有maven倉庫,掃描之後發現很多組件有漏洞,主要是因爲版本太老。因此需要將這些漏洞組件的最新版導入內部的maven私服。 問題 這麼多漏洞組件,一個個去中央倉庫找最新版,顯然不科學。因此要整個腳本來做這件事情。 方案 衆所

原创 使用API提交URL到百度和Bing

建站之後,爲了文章能夠被搜索引擎收錄,我們需要將站點提交到Google、百度、Bing等搜索網站,通過驗證之後,搜索引擎纔會去我們的網站爬數據。 爲了方便爬蟲爬取我們站點裏的文章,我們可以將站點地圖(sitemap.xml)提交到搜索網站。

原创 Linux CPU 性能測試

sysbench Sysbench is mainly intended for doing database benchmarking. However it includes options to test CPU, memory an