CodeZine(コードジン)

特集ページ一覧

ApacheModuleでWebアプリケーションをつくろう

コーディングでApacheModuleの開発プロセスをまなぶ

  • LINEで送る
  • このエントリーをはてなブックマークに追加
2008/06/11 12:00

本稿ではApacheModuleを使って簡単なWebアプリケーションを作成します。普段こうした目的に用いる機会はありませんが、実際のコーディングを通してApacheModuleの開発プロセスに親しんでもらえればと思います。

目次

1.はじめに

 Webアプリケーション開発の現場で使用されている開発言語には、Java、Perl、PHP、最近であればRuby、Pythonなどがあります。この分野ではC言語も、CGIによるWebアプリケーション開発で旧来から用いられていますが、最近の開発者にはあまり馴染みがないかもしれません。当時の新技術であったJavaと比較して、あまりにも遅い結果が出ていたからとも言われています。

 しかし、Webサーバの「Apache」、データベースの「PostgreSQL」「MySQL」、OSの「Linux」など、各所でオープンソースソフトウェア(OSS)の開発言語には、依然としてC言語が多く用いられています。このようにC言語は、Webアプリケーション開発の現場で使われるケースは減ったものの、現在でも重要な開発言語の一つです。

 そこで今回は、Apache 2.2のmod_dbdで実装された「データベースのコネクションプール」を使用して、Webアプリケーションを実現するモジュールをC言語で作成してみます。

 通常、ApacheのモジュールでWebアプリケーションを作成することはほぼありませんが、Apacheモジュールの開発プロセスを理解するのに、具体的でよいサンプルかと考えます。また最後に、Javaで作成した同じ処理を行うWebアプリケーションと、処理速度を比較してみようと思います。

 Apacheモジュールの作成は、大まかに次のステップで行います。

  1. apxsコマンドによる雛形の作成
  2. テンプレートエンジンClearSilverの導入
  3. mod_dbdの導入

2.対象読者

  • ApacheのModuleを作りたい人
  • C言語を一通り理解している人

3.環境設定

 実際の作業に入る前に開発環境の確認を行っておきましょう。

 今回使用するソフトウェアと入手URLは以下のとおりです。本稿末尾で設定手順を説明していますので、未導入のものがあればそちらを参照してください。

使用ソフトウェア名
ソフトウェア名入手URL
ファイル名
CentOS 5http://ftp.riken.jp/Linux/centos/5/isos/i386/
CentOS-5.0-i386-bin-Xof6(Xは1~6)
PostgreSQLhttp://www.postgresql.org/ftp/source/v8.2.5/
postgresql-8.2.5.tar.gz
Apache HTTP Serverhttp://httpd.apache.org/download.cgi
httpd-2.2.6.tar.gz
ClearSilverhttp://www.clearsilver.net/downloads/
clearsilver-0.10.5.tar.gz
Java SE Development Kit 6http://java.sun.com/javase/ja/6/download.html
jdk-6u3-linux-i586-rpm.bin
Apache Tomcathttp://tomcat.apache.org/download-60.cgi
apache-tomcat-6.0.14.tar.gz

  • LINEで送る
  • このエントリーをはてなブックマークに追加

あなたにオススメ

著者プロフィール

  • タケル(タケル)

    攻殻機動隊の『笑い男』に憧れていて、いつかタチコマには追いつきたいと願うSE

All contents copyright © 2005-2021 Shoeisha Co., Ltd. All rights reserved. ver.1.5