Node.js on GraalVM上でPiping Serverを動かす
モチベーション
GraalVMはパフォーマンスの高さを謳っているので、「Piping Serverの転送速度を高速化できるのでは?」と思った
GraalVMの目指すところが気に入ったので、試してみてノウハウを得たかった
GitHubリポジトリ
https://gh-card.dev/repos/nwtgck/docker-graalvm-node-piping-server.svg https://github.com/nwtgck/docker-graalvm-node-piping-server
動かし方
以下のコマンドでにPiping Serverが起動する $ docker run -p 8181:8080 nwtgck/graalvm-node-piping-server
技術とか構成とか
Dockerイメージとして配布
Alpineベースで軽量
lldでGraalのnode 動的リンクを探して、軽量化
Docker Auto Buildでpushをトリガーにmasterブランチがlatest、Gitのタグがイメージにタグに自動でビルドされる
手動pushではないので、変なものを混ぜてない
CIでDocker imageの動作テストを行っている
GraalVMのバージョン上げたときの変更で、動的リンクが変わったりとか色々を検知できるはず
GraalVMで高速化できたのか?
でも、GraalVMはオープンになったばかりなので、将来パフォーマンスのさらなる向上するのではと思っている。