PHPのAPCのキーバリューストア部分の機能は、memcacheの後からついたのでしょうか? それともこのKVSをネット越しにしたのがmemcacheなんでしょうか。それともまた別の流れや影響があるんでしょうか。そういう歴史的な前後を知りたいと思いまして・・・。

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2012/02/03 21:16:51
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:a-kuma3 No.1

回答回数4973ベストアンサー獲得回数2154

ポイント100pt

まず、APC と Memcache の関係から。

APC は、Alternative PHP Cache の略で、PHP で使えるメモリキャッシュのライブラリです。

memcached は、メモリキャッシュサーバの実装です。
PHP だけではなく、Perl や Java などいろいろな言語からアクセスするためのライブラリがあります。
そのうちの一つとして、PHP のライブラリ Memcache があります。


いつ実装されたかは、それぞれのドキュメントを調べれば分かります。

まず、memcached 。
https://github.com/memcached/memcached/blob/master/ChangeLog
version 1.0.0 は、2003-6-13 です。

次に、APC 。
http://pecl.php.net/package/APC
2.0 が 2003-7-1 です。
http://pecl.php.net/package-info.php?package=APC&version=2.0
によると、2.0 で "Complete rework." とありますから、今、使われている APC は 2.0 が最初だと思って良いでしょう。

version 1.x は、というと、きちんとした ChangeLog を見つけられていないのですが、
http://www.mail-archive.com/php-general@lists.php.net/msg01787.html
を見ると、version 1.0.4 がリリースされた通知が 2001-1-17 の日付で出されています。

で、PHP の Memcache ライブラリ。
http://pecl.php.net/package/memcache
version 1.0 が beta で、2004-5-21。
stable な version 1.1 が、2004-6-8 です。


というわけで、歴史的には APC の方が古くて、memcached の方が新しいです。
ただ、APC 2.0 でリメイクされているようですから、もしかしたら memcached にインスパイアされた部分があるかもしれません(ぼくの勝手な想像)。

で、memcached を PHP から使うためのライブラリが、memcached 本体よりも後に開発されたという流れになります。

2001-01-17APC 1.0.4
2003-06-13memcached 1.0.0
2003-07-01APC 2.0
2004-05-21PHP Memcache 1.0 (beta)
2004-06-08PHP Memcache 1.1




最後に、調べるにあたって参考にしたサイト / ページへのリンクを書いておきます。

id:mash76

すばらしいです。ありがとうございます。調べ方も参考になりました!

2012/02/03 21:16:27

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません