使えるシステムから使いたいシステムへ、有限会社アテージ

LuaのウェブフレームワークLapisでDBに接続してクエリを実行してみました。

現在利用できるDBはPostgreSQLのみです。

postgresモジュール

OpenRestyにpostgresモジュールを組み込みます。

データベース作成

データベース接続設定

config.moonというファイルを作ります。[user],[password]などは環境にあわせて書き換えてください。

config.moon

更にnginx.confのserverセクションに以下を追加します。

web.moonにDB検索用のコードを追加します。

web.moon

lapis serverを起動して、http://localhost:8080/listにアクセスすると以下のエラーが表示されます。

このエラーは、nginx.confの設定漏れで、serverセクションに以下を追加すれば解決します。

クエリの実行

web.moonのクエリの結果は以下のようなテーブルに格納されています。lapisのコンソールで確認すると以下の通りのテーブルとなっています。

ベンチマーク

abベンチをとってみました。使っているDBが異なりますが、PHPのフレームワークPhalconやFuel(Phalcom、Fuleのベンチマークはこちら)に比べかなり高速です。

キャッシュなし

キャッシュあり