Lever OS - サーバレス×マイクロサービスなWebアプリ実行環境
マイクロサービス、サーバレスアーキテクチャといったキーワードが盛んに言われるようになっています。確かにサーバレスアーキテクチャは小さなサービスを作るのに都合がよく、それらを合わせるとマイクロサービスとして成り立つかも知れません。 そんな2つを合わせて作られているのがLever OSです。まだ開発途中とのことですが、大きな可能性を秘めていそうです。
Lever OSの使い方
Lever OS自体はDockerでデプロイできます。起動したら例えばフォルダを作成し、その中にserver.jsとして次のようなコードを書きます。
module.exports.sayHello = function (name, callback) {
callback(null, "Hello, " + name + "!");
};
そして lever.json というファイルを作成します。
{
"name": "helloService",
"description": "A hello service.",
"jsEntry": "server.js"
}
これで準備完了で、 lever deploy
を実行してアプリケーションをデプロイできます。
デプロイすると /helloService/sayHello でサービスにアクセスできます。一つの実行方法はleverコマンドを使ったものです。
$ lever invoke lever://dev.lever/helloService/sayHello '"world"'
"Hello, world!"
Web APIとしてHTTP経由でのアクセスもできます。
$ curl -H "Content-Type: application/json" -X POST -d '["world"]' http://192.168.99.100:8080/helloService/sayHello?forceenv=dev.lever
"Hello, world!"
このようにLever OSを使うことでちょっとしたスクリプトのサービスをさくっと作ってデプロイ、実行できるようになります。こうした小さいサービス(マイクロサービス)をつなぎ合わせることで、より大きく複雑なシステムも構築できるようになるでしょう。
Lever OSはnode/JavaScript製のオープンソース・ソフトウェア(Apache Licnese 2.0)です。