JCConf 2020 大會心得分享 – RSocket 革命,為了 Reactive Programming 而生的高效率通訊協定

這次想介紹的是來自 Pivotal 的 Josh Long 所介紹的 RSocket。相信有使用 Spring Boot 的同學都很熟悉這個名字。RSocket 是一個 TCP based 的 protocol,跟 HTTP 相比,他支援一些長連線 / 雙向溝通的模式,跟 gRPC 一樣很適合用於 Micro services 之間的通訊。更令人心動的是 RSocket 的 R 是 reactive 的 R!而且,在官方的 RSocket Java implementation 中,他跟常用的 reactive programming 框架: Spring Reactor & RxJava (v2 以上) 一樣實作 Java 9 所提出的 Reactive Stream interface (Publisher, Subscriber, Subscription & Processor)。這代表發佈或者消費 RSocket 資料流時能夠使用 Spring Reactor 或者 RxJava 來操作。