1

yum install memcachedMySQLサーバーにインストールしました。しかし、そのままservice memcached statusではRunning..、パフォーマンスに何も起こっていないと思うので、どうすればよいでしょうか。Memcached で動作するように MySQL を構成する必要があると思います。

  • Memcached と通信するには、MySQL 側でどのような構成が必要ですか? (実行する方法?)
  • それとも、Web サーバー側からも構成する必要がありますか?

私が行き詰まっているのを助けてください。

4

2 に答える 2

8

Memcached はMySQL パフォーマンス プラグインではありません。ライトスルーまたはライトバックキャッシングシステムとして一般的に使用されます。頻繁に使用されるキーと値のペアを、変更しない限りデータベースにアクセスせずに保存する必要がある場合に、DB の負荷を軽減します。

Memcached の Web サイトにアクセスすると、役立つ情報が得られます。

無料でオープン ソースの高性能な分散メモリ オブジェクト キャッシング システムであり、本質的に汎用的ですが、データベースの負荷を軽減して動的な Web アプリケーションを高速化するために使用することを目的としています。

Memcached は、データベース呼び出し、API 呼び出し、またはページ レンダリングの結果からの任意のデータ (文字列、オブジェクト) の小さなチャンクのメモリ内キー値ストアです。

超単純な疑似コードの例:

Read:

if data in memcache {
  // Retrieve and use
} else {
  // Pull from DB, use and write to memcache
}

または、ここで Memcached は、結果をキャッシュするための簡単な例を説明しています。

Cache Results:

function get_foo(foo_id)
    foo = memcached_get("foo:" . foo_id)
    return foo if defined foo

    foo = fetch_foo_from_database(foo_id)
    memcached_set("foo:" . foo_id, foo)
    return foo
end

それを使用するソフトウェア/コードベースを作成しない限り、何もしません (通常、DB 関数を作成して、DB にアクセスする前にキャッシュをチェックします)。基本的なユースケースのシナリオを理解するには、キャッシングの Memcachedストーリーを読む価値があります。

歴史的に、MySQL での HEAP またはメモリ テーブルの使用と比較した人もいますが、同じではなく、クラスター内の多くのマシンに、および/または使用可能な空き/未割り当てのメモリがあるネットワークを介して (1 つでも) 分散できます。サーバ。

その価値を大規模に理解したい場合は、それを使用している企業のリストを見てください。

于 2013-03-22T03:49:10.350 に答える
2

これを探していますか?

Mysql5.6 は memcache 統合バージョンのプラグインをサポートするようになりました。その場合、別の memcached サーバーをインストールする必要はありません。mysql 5.6 をインストールするだけです。および memcached プラグイン。

次に..そのページでわかるように....memcachedコマンドをmemcachedサーバーに送信すると、memcachedプラグインが必要なバックアップテーブルに自動的に書き込むことができます。

もっと改善すべきだと思うことの 1 つは、テーブル フィールド タイプです。varchar/text/blob タイプのみが可能です (memcached サーバーと対話するバックアップ テーブル フィールド...)。

PS)

memcached プラグインの DML スループットがすごいと聞きました。しかし、私が試したとき、私はただ?30% 改善されました...

于 2013-03-28T06:39:20.613 に答える