原创 高性能序列化工具ChronicleWire

之前使用chronicle進行過日誌回放框架的設計,效果很不錯。後面在更加深入瞭解過程中,發現chronicle性能優勢中一個非常重要的方面,就是序列化和反序列化。chronicle提供了多個功能類,實現不同格式數據的序列化和反序列化功能。

原创 自動化的10項準備工作

軟件或應用程序的測試工作和開發人員創建軟件的工作同樣重要。有時候,軟件測試可能被忽視,但它對於公司來說是至關重要的,可以避免不必要的尷尬和金錢損失。軟件測試通常需要進行重複的測試,因爲任何人爲的錯誤都可能影響測試結果。爲了避免這樣的錯誤,如

原创 Phaser性能測試加強版

早前的舊文中,我分享了使用 java.util.concurrent.Phaser 在處理大量異步任務場景下的使用。其中用到了phaser類的重要特性 可以靈活設置同步數量,在使用過程中註冊新的同步對象。 但是在後續的使用過程中遇到的一些問

原创 PreparedStatement實踐和批處理實踐

之前在學習JDBC使用的過程中,主要使用了實現類是StatementImpl單獨執行的一些SQL語句,一直也是相安無事。在最近複習JDBC的過程中,發現了一些新知識,發現了新大陸 PreparedStatement 。 PreparedSt

原创 敏捷監控與可觀察性

敏捷開發實踐必須依賴敏捷監控框架的支持。忽視系統狀態的微小差異(包括基礎設施、應用程序性能和用戶交互)是企業無法承受的風險。特別是在性能指標和系統可靠性對客戶滿意度和忠誠度產生直接影響,並直接影響企業利潤的情況下。 傳統的應用程序性能監控(

原创 利用虛擬線程重寫自定義異步功能

最近在使用JDK 21的虛擬線程功能,感覺對於性能測試來說,還是非常值得推廣的。通過之前文章介紹,相比各位也有所瞭解了,這裏跳過Java虛擬線程的介紹了。 在官方文檔中,虛擬線程其中一個適用場景就是處理多個小異步任務時,本着隨用隨創建,用完

原创 Java、Groovy項目升級JDK 21 ASM9報錯

最近在學習Java虛擬線程,打算深挖一下性能測試方面的潛力。不過在升級JDK的過程中遇到了一些意外情況。遇到了一個比較難纏的問題,報錯信息如下: java.lang.UnsupportedOperationException: Permit

原创 HttpClient5升級筆記--API篇

最近終於是安奈不住升級的衝動,將自己項目的HttpClient版本從4升級到了5,其過程不可謂不艱辛,很多API改動讓人無從下手。 Apache HttpClient 5(也稱爲 HttpClient 5.x)是 Apache HttpCo

原创 Intellij 2023.3Groovy項目報錯缺陷分享

2023.3最新版,據悉是對JDK 21的虛擬線程支持更好的,爲了體驗更加絲滑就升級了。結果一下子就悲催了。看到了下面的報錯。 Executing pre-compile tasks… Running 'before' tasks Chec

原创 遊刃有餘:玩轉Java泛型

Java 中的泛型提供了一種創建可以處理不同類型數據的可重用代碼的方法。它允許用戶定義可操作各種數據類型的類、接口和方法,而無需犧牲類型安全性。在 Java 5 中引入的泛型已經成爲 Java 編程語言的一個基本特性。 在 Java 引入泛

原创 JDBC ResulSet資源釋放和Statement併發調用源碼分析

最近喜歡上閱讀源碼來佐證之前的學到的知識,之前讀完了Caffeine源碼瞭解到了Caffeine在部分高併發場景可能存在瓶頸的3個點之後。今天又對Java-MySQL的JDBC產生興趣。 起源於兩個問題: 當一個 ResulSet 被執行

原创 GitHubMySQL升級8.0覆盤【譯】

15年前,GitHub作爲一個Ruby on Rails應用程序開始,只有一個MySQL數據庫。從那時起,GitHub已經發展了其MySQL架構,以滿足平臺的擴展和彈性需求,包括構建高可用性,實現測試自動化和分區數據。今天,MySQL仍然是

原创 Groovy StringBuilder類踩坑

今天在寫腳本的時候發現一個奇怪的錯誤。經過猜想驗證,發現原來Groovy過於靈活了,算是重複踩了之前的坑。Groovy特性描述如下: 當Groovy腳本調用getFun()和setFun()方法時,會默認給這個類有一個FunTester的屬

原创 JVM C1、C2編譯器

Java虛擬機創建了C1和C2編譯器線程,用以優化應用程序的性能。但是有時這些線程會消耗大量CPU資源。在這篇文章中,我們將深入探討C1和C2編譯器線程,以及如何解決它們可能導致的高CPU消耗問題。 Hotspot JIT HotSpot

原创 探索DevOps文化

採用DevOps文化需要在企業層面改變思維方式、流程和文化。許多人認爲採用DevOps只是在不同的團隊之間劃分任務,併爲團隊成員分配特定的角色。然而,恰恰相反,它需要在實施最佳實踐的同時,致力於更長遠的事業。因此,轉向DevOps不是一個瞬