iT邦幫忙

鐵人檔案

2022 iThome 鐵人賽
回列表
Software Development

Quarkus, Kotlin, Reactive 雲原生服務開發 系列

Quarkus 為 RedHat 打造的雲原生 JVM 框架。支援微服務常用的標準,同時間改善 JVM 啟動速度慢、記憶體高等缺點。
本分享將會利用 Quarkus 原生對於 reactive 的支援,配合 Arrow KT, 打造 suspend 一條龍的 RESTful service. 過程中亦演示 Quarkus developer joy 的部份,例如 live reload 等等。

DAY 11

Kotlin Coroutines 讓 Quarkus Reactive 容易起來 - Day11

在 Java 這邊有很多 Reactive 的 framework, 早期有 RxJava, Spring 的選擇是 Reactor, Quarkus 的選...

2022-09-17 ‧ 由 Brandy 分享
DAY 12

測試 Quarkus 應用,用 Kotlin DSL 一目了然 - Day12

一個現代化、雲原生的框架一定要考慮到測試,有足夠的測試才能讓應用在改版與升版時更有保證。Quarkus 整合了 JUnit5 讓我們可以很容易的寫出測試的程式碼...

2022-09-18 ‧ 由 Brandy 分享
DAY 13

Quarkus 加快你的開發效率 - Live Reload - Day13

Quarkus 不僅僅是提供了很好框架來撰寫 web 或是 microservice,而且在 feature 上也是經過完整的測試。可以用很少的時間與最小的設定...

2022-09-19 ‧ 由 Brandy 分享
DAY 14

談 Quarkus 錯誤處理,但是我們要用 FRP 引入 Arrow KT

錯誤處理的重要 Error Handling 是系統架構很重要的一部份,當開始設計新功能時,大多時候是討論 happy path, 但是當新功能上線後,常常注意...

2022-09-20 ‧ 由 Brandy 分享
DAY 15

用 Arrow KT 作錯誤處理,重構 Repository - Day 15

昨天的文章提到我們要用 FRP 的風格來實作。今天會重構 Repository,明天來修改 RESTful layer。因為我們有寫 Test Case,所以重...

2022-09-21 ‧ 由 Brandy 分享
DAY 16

重構 Resource Layer - Fold : 在雙軌的盡頭處理 Error - Day16

在Service Layer 與 Repo Layer的處理過程中,會利用到 map, flatMap, zip 來 compose Either,最後通常會...

2022-09-22 ‧ 由 Brandy 分享
DAY 17

打包 Quarkus ,Java/Kotlin 應用可以 compile 成執行檔 - Day17

0.02 秒就起來的 Java 應用有看過嗎??? 雖然這個專案不大,這個速度對 JVM 來說還是很驚人 今天要來打包 Quarkus 應用,沒有經驗也沒有關...

2022-09-23 ‧ 由 Brandy 分享
DAY 18

又快又小的 Quarkus 的背後魔法 ? 與 Spring Boot 的同與異

在上一篇我們看到 Quarkus 應用啟動非常快速,而且可以編譯成 Native。所以非常適合佈署在雲服務的環境。開發的過程中其實也可以注入 Bean, 跟...

2022-09-24 ‧ 由 Brandy 分享
DAY 19

Quarkus 的設定檔, Kube-native 的讀取順序 - application.properties & ENV

寫程式很 hardcore,但應該避免 hard code (單押)。 依據 12 Factor App - III. Config, 設定是該管理的一環,所...

2022-09-25 ‧ 由 Brandy 分享
DAY 20

Kubernetes 關心 Quarkus 的健康, 提供探針給他吧

Kubernetes 需要知道應用的健康狀況,Quarkus 也內建了 Extension 可以容易的提供探針(Probe) 予 Kubernetes 作健康檢...

2022-09-26 ‧ 由 Brandy 分享