読者です 読者をやめる 読者になる 読者になる

テストステ論

高テス協会会長が, テストステロンに関する情報をお届けします.

(akashic report) finchにstreamingを貢献しました

私が現在開発しているS3ソフトウェアの

GitHub - akiradeveloper/akashic-storage: Filesystem-backed S3-compatible storage in Scala/Finch

は, finchの上に実装されています. finchは, finagle-httpの上に関数的なテイストを追加するラッパーです.

これに, streamingをサポートするパッチをマージされました. サンプルプログラムを動かして「使ってみた^^」と言うだけのオナニーブログには意味はありませんが, 実際にハードに使ってみて足りない機能を訴求し追加することは意味があります.

github.com

finchは, Netty3の都合上, 2GB以上のチャンクをやりとりすることが不可能なので, 2GB以上のファイルをMultipart Uploadでうpしても, それをGET出来ないことになります. 5GBをPUTする人はなかなかいないと思いますが, S3の仕様上はそれを認めているため, これに対応出来ない意味もありました. 対応するためには, finagle-httpではサポートしているstreamingをfinchでもサポートしてあげる必要があります.

すでにPoCのコードはあったため, それを現在のmaster向けに手直ししてPRするというのが私の仕事でした.

Scala祭を見る限り, finchを使ってる日本企業はあまりないのだと思います. APIサーバといえばPlayなのでしょう. Playのどこがいいのかさっぱりわからないです. finchを使ってください. akashic-storageのコードを読めば, finchについて学ぶことが出来ます.