Magnolia Tech

いつもコードのことばかり考えている人のために。

『Fluentd実践入門』で設計を学ぶ

今までFluentdは全然使ったことが無かったこともあり、先日出版された『Fluentd実践入門』を読み始めました。

入門と謳われていますが、単なるインストール方法から基本的な使い方までを一通り説明して終わり、というような内容ではなく、そもそも「Fluentdとは何か」「どんな機能があるのか」「なぜそのような機能になっているのか?」「プロダクションレベルで運用するために何をすればいいのか」「プラグインはどうやって作るのか」と、500ページ近いボリュームで実践的な内容が網羅されています。

特に、第1章の「Fluentdとは何か」は、興味深くて、大量のデータをストリーム処理するための知見(バッファリングや、リトライ)がコンパクトにまとまっていて、ここを読むだけでも設計の「学び」が有ります。

第1章以外も至るところに、「なぜこういう設計になっているか?」ということが語られている箇所が多数登場するので、「あーなるほどー」と感心するところが多い1冊ですね。

複数のサーバが協調して動く環境で「上手くいかない時にどうするか?」を設計できているか否かで運用性が全然違ってきます。この辺りは良い設計を見て学ぶしかないので、単にFluentdのことを理解するだけでなく、実践的な設計の理解、という意味でもお勧めです。