ご要望があって、
クッキーシミュレート機能で、今までdbmに保存していたデータを、
memcachedに渡してあげるようにしてみた。
apr_memcacheを使っているせいか、とっても簡単。
apr_memcacheは0.7.0を使用してテストした。
configureが通らなかったんで、configure.acの33行目を
LIBTOOL="`${apr_config} --apr-libtoool`"
を
LIBTOOL="`${apr_config} --apr-libtool` --tag=CC"
として、
$ autogen.sh
$ ./configure --prefix=/usr
$ make
でコンパイルした。
で、memcachedを使用するようにmod_chxjをコンパイルするには、
上記apr_memcacheをインストールしたとして、
$ ./configure --enable-memcache-cookie \
--with-apr-memcache-header=/usr/include/apr_memcache-0 \
--with-apr-memcache-lib-dir=/usr/lib
でconfigureしてmakeすればOK。
で、設定は、
ChxjCookieTimeout 30
ChxjCookieMemcacheHost "localhost"
ChxjCookieMemcachePort 11211
という感じ。
ついでにMySQL版もやってしまった。
で、こちらのconfigureは、
$ ./configure --enable-mysql-cookie \
--with-mysql-header=/usr/include/mysql \
--with-mysql-lib-dir=/usr/lib
として、make。
設定は、
ChxjCookieMysqlHost "localhost"
ChxjCookieMysqlPort 3306
ChxjCookieMysqlDatabase "test"
ChxjCookieMysqlUsername "roottest"
ChxjCookieMysqlPassword "pwtest"
ChxjCookieMysqlSocketPath "/tmp/mysql.sock"
ChxjCookieMysqlCharset "utf8"
ChxjCookieMysqlTablename "chxj_cookie"
ChxjCookieTimeout 30
な感じ。
いやいや、勉強になった。
.
--
残作業:
Fedora-8で確認【済】CentOS 5.1で確認【済】CentOS 4.6 x86_64で確認【済】Debian sargeで確認(memcachedはデフォルトでは使用できない。)【済】Debian etchで確認【済】今回はdebなし【済】リリース(0.9.0)【済】
--
追記
apr_memcache0.7.0を使用する場合apr_memcacheにバグがあるため、
パッチを当てる必要がある。
2 コメント:
さっそくビルドして使ってみました。バッチリ動いているようです。仕事速すぎです!どうもありがとうございました。
ただ、クッキーからのセッションの復元に微妙なところがあるので、アプリのせいかそうじゃないのかちょっと調査中です。
>さっそくビルドして使ってみました。
ありがとうございます!
>ただ、クッキーからのセッションの復元に微妙なところがあるので、アプリのせいかそうじゃないのかちょっと調査中です。
うーむ。。
それはCookie中のdomainやpath、expiresがらみでしょうか・・?
そのあたりは、急ぎで今実装中でございます。。。すみません・・。
こちらでももう少しいろいろとやってみます。。
コメントを投稿