memcachedとは何か、なぜ必要なのか

Memcached (read memcEshid)は、RAMにさまざまなオブジェクトをキャッシュするためのシステムです。 メモリを使用するとデータベースやファイルを使用するよりも高速になるため、データベースまたはファイルシステムの負荷を大幅に削減し、サイトを高速化します。 私が覚えている限りでは、LJ向けに開発されたもので、現在では、多数のユーザーがいるほとんどすべてのプロジェクトで使用されています。 別のサーバーによって起動されます。



スタートアップを作るつもりなら、このテクノロジーに細心の注意を払うことをお勧めします。 キャッシュにより、データベースクエリの数を大幅に減らすことができます。



PHP用の特別なPECLモジュールがあります(つまり、PHPには付属していません。ダウンロードしてコンパイルする必要があります)。 Perl、Python(Django)、Ruby(RoR)およびその他の言語用の既製のモジュールもあると思います。



memekesh自体のAPIには、サーバーの選択、接続と切断、オブジェクトの追加、削除、更新と受信、犯罪とコメントの基本的な機能のみがあります。 各オブジェクトに対して、1秒から無限のライフタイムが設定されます。 メモリがオーバーフローすると、古いオブジェクトは自動的に削除されます。 PHPの場合、追加の機能を提供するmemekeshを操作するための既製のライブラリもあります。



memkeshを使用するための基本的なアルゴリズムは次のとおりです。memkashサーバーに接続してオブジェクトを取得します。 そうでない場合は、データベース(またはデータを格納できる他の場所)にアクセスし、オブジェクトを作成し、ユーザーに発行して、次にアクセスするときに読み取れるようにmemcacheに追加します。



memkeshでは、頻繁に要求されるデータのみを保存するのが理にかなっています。 1週間に1回オブジェクトが要求された場合、おそらくファイルキャッシュを使用するのが最善です。 ただし、プロジェクトのアーキテクチャにも依存します。



現在、私のプロジェクトの1つ(出会い系サイト)で、memkeshを使用して、オンラインまたはオフラインでユーザーステータスの表示実装しようとしています



All Articles