Perl入門ゼミ

テキスト処理、Linuxサーバー管理、Web開発ならPerl

DBIx::Customを非同期クエリと一緒に使うための修正を考えている

現在DBIx::Customは実験的にMySQLの非同期クエリをサポートしているのですけれど、これはあまりよくないと考えています。

一つ目は、非同期クエリの仕組みが、RDBMSごとにかなり異なるので、ORマッパーの中で抽象化するのはあまりよくないなぁという感覚がある。

だから、この実験的なサポートを終了して、DBIx::Customは、SQLの同期実行とSQLの生成に特化しようと思う。

クエリを実行するときは、一発で実行できたほうが楽だ。でも、非同期クエリを投げるためのモジュールと連携することができなない。

だから

  1. 同期クエリはそのまま実行できる
  2. 非同期クエリを投げたい場合は、SQL生成したものを、他のモジュールで利用できるようにする

Mojo::Pgは、PostgreSQLで、非同期クエリをサポートしているのだけれど、これにSQLを渡せるようにしたい。非同期クエリを投げたいときにも対応できるようにする。

  • Perlとはテキスト処理の記述性とパフォーマンスに優れ、正規表現が言語に組み込まれているプログラミング言語です。
  • Linuxサーバーでのフィルタリングプログラム、複数行の文字列を処理、ファイル内容の検索・置換などが得意
  • Perlはgitopensslなど広く普及したUnix/Linuxミドルウェアの補助ツールとして採用実績あり。後方互換性とポータビリティの高さがひとつの理由と推測。
  • 大量のテキストを扱うWeb開発も得意。ロングテールSEOを意識したWebサイト、アドテクやソーシャルゲームでの50ms以内のJSONの生成など。