PHPカンファレンス2017でApache Kafkaについて話しました

PHPカンファレンス2017

今年も参加してきました

f:id:ytakezawa:20171010005624j:plain

2017/10/08 PHPカンファレンス2017で発表に使ったスライドです

speakerdeck.com

巨大化してしまったアプリケーションを分解する場合や、
マイクロサービス化するにあたって、
こうしたメッセージミドルウェアを利用するのがアプリケーション開発の重要なポイントになっています。

コンポーネント化やDDDなどによる堅実なアプリケーションも大事な要素ではありますが、
最近では複数のデータベースを跨いでるアプリケーションや、
ユーザー向けのサービスで分析処理、
ビッグデータなどと連携するアプリケーションでKafkaを利用するケースが多くなっている傾向もあります。

PHPは多くのサービスを支えている言語です。
今後は堅実さと、より巨大なデータフローを支えるシーンが多くなると思います。

そんな場面に直面した時のヒントになればと思います。

デモがみたい!と何人かの方に言われましたので、
折角なのでLaravelとKafka Connect、Prestoなどを使ったサンプルを公開します!

f:id:ytakezawa:20171010005756j:plain

弁当、めっちゃ美味しかった・・!
実は毎年スピーカー弁当あるよ!と数年スピーカーとして参加しているのに初めて知りました・・

今年の登壇シリーズ

毎年各地のPHPカンファレンスに参加していますが、
毎年、「今年登壇するときはこれでやる!」と決めていたりしていまして、
今年は今やっているビッグデータ系をPHP側からアプローチするシリーズでした。
(福岡のカンファレンスだけはADRの話をしましたが)

そんなこんなで実は各地でやったセッション、全て見聞きすると繋がるシリーズになっています。

PHPカンファレンス関西、builderscon2017

speakerdeck.com

www.youtube.com

参加したセッション

session03: 型を意識したPHPアプリケーション開発

buildersconの時に他のセッションに参加していて途中参加だったため、最初から参加しました
とても丁寧な解説と、ライブコーディングで親切なセッションでした。
フレームワークを利用して開発していると、手軽さだけを重視してしまい、
結果的に巨大な処理になってしまい堅実さを軽視してしまいがちです。
複雑さに立ち向かうための型を理解する良いセッションでした。

session35: ChatWorkとPHPと私

弊社では自分がKafkaとHBaseなどを組み合わせて、
データ処理系のアーキテクチャを設計・開発しているところですが、
DataWorks Summit SanJose 2017の発表や、Scala移行などの話題があり、
気になっていたので参加しました。

アーキテクチャの話はありませんでしたが、実際にやった話が聞けたのでよかったです。
PHP7かHHVMか、という話もあり、
HHVMはSymfony4からは対応しなくなるなどがありますので、
Hackでも利用できるようにいくつか作ろうかなーと思いました。

session37: PHPで理解するニューラルネットワークを使った機械学習

php-ai/php-mlではなくて、自身でライブラリを作って学習させてみた、というセッション。
buildersconで "Googleが開発したニューラルネット専用LSITensor Processing Unit」" を聞いていたので、
GPU大丈夫なんだろうかと思いながら、
実践で使う場合はさすがにPHPではやりませんが...

単純に面白いなぁと思ったセッションでした。

来年は他にもいくつかPHPの大きなイベントがあるようなので楽しみです!