Apitore blog

Apitoreを運営していた元起業家のブログ

JSUG勉強会 2017年その5 Spring I/O報告会に参加してきました

はじめに

ApitoreではSpringを大量に使っています。Pivotalさんで勉強会があったので参加してきました。資料も公開されているようなのでそちらを見たほうが良いと思いますが、一応メモを残します。

Spring 5.0 Reactive関連

本日のお話 - Reactor - Spring5 - Reactive Metts Data Access makingさんのまとめ資料がもっとわかりやすいらしい笑

Reactor

Reactiveとは 細切れ処理を優先度順にどんどんまわしていくイメージ(講演者の解釈) Reactive Streamsとは JDK9に取り込まれる予定。 データを送る量を相手の環境にあわせてコントロールする。 MonoとFlux Reactive StreamsをStream API風にかける。 spring-webfluxが追加 基本的にはMVCの書き方でいける。新たにMonoとかFluxを指定できるようになる。

Functional Web Framework

RouterFunction いわゆるルーター。 HundlerFunction リクエストハンドラーに相当。

Spring Data

Reactive Template API dataアクセスをFluxにかける。 ReactiveCrudRepository MonoとかFluxが扱える。 JPA/JDBCはむり、reactiveにできない。 理由はhibernateとかblokingだから。

Thymeleaf

スライドとデモは公開されている。 Thymeleafもりあがってる(Spring bootだと)。 Reactive化するメリットってなんだろう? →動的に値を変えられる。作り方によっては軽量。

なかやすみ

ピザだー!やったぜ! この2週間で何枚のピザを食べたろうか笑

Spring IOに参加してわかったSpring Boot

FailureAnalyzerを使うとエラーがわかりやすくていいよ。 SpringBootによるユニットテスト - @WebMvcTest - @DataJpaTest - @RestTemplateTest

拡張について

おしながき - SpringCloudFunction - Spring Auto REST Docs

SpringCloudFunction

サーバーレス Amazon lambdaとかGoogle Cloud Functionに相当。 実際はlambdaから呼んでもらう。 ※個人的にはEurekaからSpringCloudFunctionみたいなのを使えるといいな。マイクロサービス化したAPIを基本寝かせておいて、リクエストに応じて起こしに行くみたいな。

Spring Auto REST Docs

Swaggerとかあるけど、、、ガンガン開発していると必ずしも一致しない。 これはTestに紐づいたドキュメント作成ツール。 Spring REST Docsはドキュメントの元を作るツール。 Asciidoctor: markdown的な。 作り方 テストコードを書いて、ドキュメント用の記述を書く。 Spring Auto REST Docsはテストコードにすら書かない(なるべく)。Javadocとか使う。 ※うーん、メリット感じないな。swaggerの方がよい。SpringFoxで簡単にできるし。

ゼロからはじめるオープンソース生活

プルリクとか送って見な。