iT邦幫忙

reactive programming相關文章
共有 32 則文章
鐵人賽 Software Development DAY 30

技術 [Day 30] Reactive Programming - RSocket (Hello World) Part 2

前言 補充上一篇的DEMO,包含RSC的其他應用與測試的撰寫,測試是透過之前介紹過Reactor提供的StepVerifier,還沒看過的人可以先去了解一下。...

鐵人賽 Software Development DAY 29

技術 [Day 29] Reactive Programming - RSocket (Hello World) Part 1

前言 對RSocket有基本的了解之後,照慣例要來做一個簡單的實作,內容參考Josh Long的The RSocket Revolution ,額外調整更新與說...

鐵人賽 Software Development DAY 28

技術 [Day 28] Reactive Programming - RSocket Part2

前言 上一篇提到微服務的興起是RSocket誕生的重要契機,相信有微服務開發經驗的朋友,在微服務切分耦合與實際上的效能問題如何抉擇傷透腦筋,服務間的溝通效率不彰...

鐵人賽 Software Development DAY 27

技術 [Day 27] Reactive Programming - RSocket

前言 Reactive的世界裡,我們已經知道了從接收request(Spring WebFlux)進來一路到DB(R2DBC),這時候就只剩下最後一哩路,也就是...

鐵人賽 Software Development DAY 26

技術 [Day 26] Reactive Programming - Spring WebFlux(R2DBC Repositories)

前言 上一篇我們使用ReactiveCrudRepository來對資料庫存取,對於一些不太複雜的SQL指令來說,使用CrudRepository方便又省事,讓...

鐵人賽 Software Development DAY 25

技術 [Day 25] Reactive Programming - Spring WebFlux(R2DBC)

前言 在上一個範例中,是寫死回傳的內容,顯然在現實生活中應該是不會有公司讓你可以這樣做的,而當我們的Controller開始Reactive了,背後的data...

鐵人賽 Software Development DAY 24

技術 [Day 24] Reactive Programming - Spring WebFlux(Router)

前言 接續上一篇RestController轉成Reactive,可以看到邏輯的部分已經被抽到Handler內了,剩下就是路徑轉導就是交由Router來處理。...

鐵人賽 Software Development DAY 23

技術 [Day 23] Reactive Programming - Spring WebFlux(Handler)

前言 經過上一個範例的練習,也大致上的知道相較於原本Spring MVC annotation-based,Spring WebFlux更傾向使用更Functi...

鐵人賽 Software Development DAY 22

技術 [Day 22] Reactive Programming - Spring WebFlux(Hello World) Part 2

前言 在上一篇成功實作最基本的WebFlux功能,看到了一些有點熟悉又有點陌生的新朋友,在這邊補充說明。 Handler&Router Spring 同...

鐵人賽 Software Development DAY 21

技術 [Day 21] Reactive Programming - Spring WebFlux(Hello World) Part 1

前言 經過了二十一天,進入到了實作的部分,接下來就會建置一系列實際連線至DB並透過Restful溝通的Reactive的服務。這篇主要是透過Restful溝通,...

鐵人賽 Software Development DAY 20

技術 [Day 20] Reactive Programming - Spring WebFlux

前言 對Reactor有一定的認識之後,接下來就要進入正題(迷:經過二十天才到正題?!),畢竟大部分的開發者不太會單獨使用Reactor,勢必要有一個比較完整的...

鐵人賽 Software Development DAY 19

技術 [Day 19] Reactive Programming - Reactor (operator fusion)

前言 這篇掙扎了很久要不要寫,算是進階一點的主題,內容雖然不多,但已經讓我絞盡腦汁,關於這個主題我自己也還是有不了解的部分,但有鑑於蠻多影片都會提到operat...

鐵人賽 Software Development DAY 18

技術 [Day 18] Reactive Programming - Reactor Test(VirtualTime)

前言 接續上一篇介紹測試,之前也提到過Reactor提供VirtualTimeScheduler來讓測試更方便,現在就來結合StepVerifier與Virtu...

鐵人賽 Software Development DAY 17

技術 [Day 17] Reactive Programming - Reactor Test(StepVerifier)

前言 在之前的Reactor相關範例中,如果需要測試結果是否符合預期,都必須要透過System.out.println來印出結果人工檢視,有時候還必須加上Thr...

鐵人賽 Software Development DAY 16

技術 [Day 16] Reactive Programming -Reactor(ConnectableFlux)

圖片來源:unsplash fabio 前言 如果你的需求是想要累積集滿幾個subscriber再開始推送資料,這時候就是ConnectableFlux派上用...

鐵人賽 Software Development DAY 15

技術 [Day 15] Reactive Programming -Reactor(COLD VS HOT) -PART 2

前言 其實有一個特別的例子是just,直覺會認為just就是產生一個publisher等人來subscribe,理所當然就是Cold Publisher,我一開...

鐵人賽 Software Development DAY 14

技術 [Day 14] Reactive Programming -Reactor(COLD VS HOT) -PART 1

前言 之前文章提到Publisher都是Lazy loading,subscribe觸發之前整個streaming是不會運作的,就像是java streamin...

鐵人賽 Software Development DAY 13

技術 [Day 13] Reactive Programming - Reactor(Processors & Sinks)

前言 這個主題花了我好多的時間查資料,之前提到動態的產生publisher其實就有sink的概念,但文件上對於sink的描述不是很清楚,當然有可能是我資質駑鈍,...

鐵人賽 Software Development DAY 12

技術 [Day 12] Reactive Programming - Reactor(publishOn/subscribeOn)

前言 在上一篇介紹了Reactor提供Scheduler來幫助開發者,這篇就是來說明具體是如何使用。 publishOn 執行的方式與一般的operator一樣...

鐵人賽 Software Development DAY 11

技術 [Day 11] Reactive Programming - Reactor(Scheduler)

前言 Reactor 是concurrency-agnostic ,花了一點時間研究這個英文單字的意思,concurrency是我們熟悉的併發,agnostic...

鐵人賽 Software Development DAY 10

技術 [Day 10] Reactive Programming - Reactor (generate & create)

前言 之前介紹產生Flux 的方法都是固定的遵循特定邏輯的,若今天有需要客製化特殊的邏輯來產生資料,Reactor提供了generate、create來動態的產...

鐵人賽 Software Development DAY 9

技術 [Day 9] Reactive Programming - Backpressure

前言 大部分介紹Reactive Programming都一定會提到Backpressure,可能放在第九天有點稍晚,但我覺得有基本的Reactor觀念後再來看...

鐵人賽 Software Development DAY 8

技術 [Day 8] Reactive Programming - Reactor(FLUX & MONO) Part 2

前言 上一篇介紹了何謂FLUX & MONO,本篇就來說明具體的使用方式。 Just 最簡單建立Flux or Mono的方法Just Flux<...

鐵人賽 Software Development DAY 7

技術 [Day 7] Reactive Programming - Reactor(FLUX & MONO) Part 1

前言 上一篇介紹了Java原生提供的api,這一篇開始介紹其他Reactive Programming的工具。 RxJava 如果你是一名Android的開發者...

鐵人賽 Software Development DAY 6

技術 [Day 6] Reactive Programming - Java 9(SubmissionPublisher、Processor)

前言 上一篇的範例中有使用到SubmissionPublisher,才更加地認識到其實Publisher需要做蠻多事情的,這邊先簡單介紹一下Submission...

鐵人賽 Mobile Development DAY 14

技術 完成便利貼程式第一版

補充完了必要的知識後,現在再回頭看一下之前遇到的問題吧! 整合完 Firebase 之後發現了兩個問題: 更新資料到網路上需要花費相對多的時間,如果持續不斷的...

鐵人賽 Software Development DAY 5

技術 [Day 5] Reactive Programming - Java 9(Publisher、Subscribers)

前言 java 9的時候新增支援Reactive Stream,所以在介紹Spring Reactor、WebFlux之前先來認識一下Java 原生的Flow...

鐵人賽 Software Development DAY 4

技術 [Day 4] Reactive Programming - 觀察者模式Observer Pattern

圖片來源 前言 Reactive Programming 概念上與Observer Pattern非常相似,先來了解這個Design Pattern。 Obs...

鐵人賽 Software Development DAY 3

技術 [Day 3] Reactive Programming - Functional Programming

前言 並不是說Reactive 一定要搭配Functional,只是搭配起來更好用,而後面介紹到的Reactor & WebFlux,基本上也都是Fun...

鐵人賽 Software Development DAY 2

技術 [Day 2] Reactive Programming - Programming paradigm

前言 在程式歷史的進程中,就像是動物歷史一樣,是在漫漫的演變當中前進。動物會根據環境最適者生存,程式也會慢慢演進,根據環境、硬體資源等原因逐漸找出一個patte...