Tokyo Cabinet

TCHDBServerを修正

大晦日のエントリでPUTのリクエストエンティティ取得が遅いと書きましたが、原因はサーバの実装がRFC 2616/HTTP 1.1に準拠していなかったことでした。つまり全面的に僕が悪かった、と。orz pecl_http (というかcURL) はPUTメソッドのリクエストを送信すると…

PHPでTokyo Cabinetハッシュデータベースサーバを作ってみた

Tokyo Cabinetのデータベースは書き込みモードで開くと排他ロックがかかるので、Apache2 (prefork)+mod_phpやCGIのようなリクエストごとにPHPのプロセスが分かれているWebアプリケーションでTokyo Cabinetを読み書き両用で使うのは苦しいものがあります。(コ…

php_tokyocabinet-0.3.0: Tokyo Cabinet 1.1.x対応(専用)

php_tokyocabinet-0.3.0.tgz Tokyo Cabinet 1.1.0で加わったAPIを実装。 TCHDB::setcache() TCBDB::range() TCBDB::rangefwm() IDLに合わせてTCBDBクラスのメソッドを名称変更。古い名前も残しているが、非推奨。 putdupall→putlist, outall→outlist, getall…

php_tokyocabinet-0.2.0

php_tokyocabinet-0.2.0.tgz Tokyo CabinetのPHPバインディングを更新しました。変更点は以下の通りです。 データベースを閉じるcloseメソッドを実装。(0.1.0ではIDLで指示されていないし、明示的に閉じなくてもデストラクタで閉じられるので実装していなか…

php_tokyocabinet-0.1.0

php_tokyocabinet-0.1.0.tgz Tokyo CabinetのPHPバインディングを作ってみました。 インストールは phpize; configure --enable-tokyocabinet; make; sudo make install と、いつもの手順ですが、configure内でpkg-configを使います。Tokyo Cabinetはバージ…