Node.js on GraalVM上でPiping Serverを動かす
#Graal #GraalVM #Node.js #Piping_Server #Docker #制作物
モチベーション
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
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で高速化できたのか?
結果:できなかった。nwtgck/piping-server のほうが転送速度速かった。
でも、GraalVMはオープンになったばかりなので、将来パフォーマンスのさらなる向上するのではと思っている。