Memcachedを使用してWordPressWebサイトのデータベース負荷を軽減します

公開: 2018-11-30
WordPressのMemcached
@Cloudwaysをフォローする

Memcachedは、ホスティングサーバーに存在するキャッシュメカニズムの1つです。 これは主に、データベースの負荷を軽減してWebページの読み込みを高速化するのに役立つデータベースクエリを処理します。 ウェブサイト/ストアがデータベースクエリに大きく依存している場合、WordPressウェブサイトにMemcachedを使用すると、パフォーマンスが大幅に向上し、ページの読み込み時間が短縮されます。

YouTube、Reddit、Facebook、Twitter、Wikipediaなどの大手インターネット企業は、Memcachedを使用してページの読み込み時間を短縮しています。 Google App Engine、Microsoft Azure、IBM Bluemix、Amazon Web Servicesも、APIを介してMemcachedサービスを提供します。

ページの読み込み時間を短縮することの重要性を考慮して、私たち(Cloudways)は、クラウドサーバーをホストしているマネージドWordPressにプリインストールされたMemcachedを提供しています。 ただし、Memcachedを最大限に活用するためにアプリケーション(WordPress)を構成する必要がある場合があります。

目次

  1. Memcachedとは何ですか?
  2. Memcachedは何に使用されますか?
  3. Memcachedはどのように機能しますか?
  4. Memcachedの使用方法は?
  5. サーバーへのMemcachedのインストール
  6. Memcachedが実行されているかどうかを確認します
  7. Cloudwaysユーザー向けのMemcached
  8. WordPressMemcachedプラグイン
  9. 最終的な考え

Memcachedとは何ですか?

Memcachedの公式ウェブサイトによると、Memcachedは次のとおりです。

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

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

簡単に言うと、Memcachedは、データベースクエリ、API呼び出し、またはページレンダリングの処理の結果として、文字列とオブジェクトをサーバーのRAMに格納する分散型の一時オブジェクトキャッシュシステムです。 このメカニズムに使用されるサーバーは、Memcachedサーバーと呼ばれます。

Memcachedは何に使用されますか?

Memcachedは、データベースの負荷を軽減することにより、eコマースストア、登録/ログインWebサイトなどの動的Webアプリケーションを高速化するために使用されます。 処理された結果が保存されるため、訪問者が同じクエリを再度リクエストするたびに、Memcachedはクエリと応答を処理する代わりにそれに応答できます。 サーバーのビジー状態を低く保つことで、訪問者は読み込み時間が短縮され、ユーザーエクスペリエンスが向上します。

GitHubには、面白くて面白い実世界の話があります。Memcachedの典型的な使用例を理解するために読んでください。

あなたの現在のWordPressホスティングはパフォーマンスが悪いですか?

Cloudwaysに移行して、WordPressのパフォーマンスを最大化します。

今すぐ起動!

Memcachedはどのように機能しますか?

訪問者/ブラウザがデータベースの処理と応答を必要とするサーバーを要求するたびに、サーバーに負荷がかかります。 Memcachedは、データオブジェクトを一時的な動的メモリに保存することで、その負荷を軽減します。 キー値にデータを保存し、ブラウザのリクエストをデータベースに送信する前にメモリをチェックします。 キャッシュが存在する場合、処理するデータベースを使用せずに要求に応答します。

上で説明したように、Memcachedは、次の4つの主要コンポーネントで構成される分散メモリオブジェクトキャッシングシステムです。

  • クライアントソフトウェア:分散された利用可能なMemcachedサーバーのリストを受信します。
  • クライアントベースのハッシュアルゴリズム:キー値に基づいてサーバーを選択します。
  • サーバーソフトウェア:データ(値)とキーを内部ハッシュテーブルに保存します。
  • サーバーアルゴリズム:古いデータを削除してメモリを再利用するタイミングを特定します。

上記のコンポーネントにより、Memcachedはデータを保存および取得できます。 各アイテムは次のもので構成されます。

  • 有効期限
  • 生データ

アイテムがリクエストされると、Memcachedは有効期限を検証して、リクエストに応答する前にアイテムがまだ有効かどうかを確認します。 キャッシュが存在しない場合は、データベースにリクエストを送信して、結果をアイテムとして処理および保存します。

サーバーがメモリを使い果たした場合、サーバーは期限切れのアイテムを探して置き換えます。 それでも情報が必要な場合は、特定の期間に要求されなかったアイテムを探します。 これにより、Memcachedは最近要求された情報をダイナミックメモリに保持します。

高レベルのMemcachedでは、次のように機能します。

  1. Memcachedは、要求されたデータがキャッシュに保存されているかどうかを確認します。
  2. 2つの可能な出力:
    –データはキャッシュに保存されます:データベースを中断することなく、Memcachedから要求されたデータを返します。
    –データがキャッシュに保存されない:要求されたクエリを実行し、データを処理および取得して、結果をメモリに保存します。
  3. アイテムが更新されるか、アイテムの有効期限が切れると、Memcachedはキャッシュを更新し、要求されたクライアントに新しいコンテンツが配信されるようにします。

Memcachedの使用方法は?

Memcachedの使用には2つのステップが含まれます。 まず、ホスティングサーバーにインストールする必要があります。次に、アプリケーションがMemcachedをサポートできるようにする必要があります。

インストールと構成のプロセスを以下に説明します。

サーバーにMemcachedをインストールする

Memcachedは多くのCPUリソースを必要としません。 それは純粋にRAMに依存しています。 8GBのRAMのWebサーバーがあり、OSとWebサイトが4GBしか消費しない場合は、残りのRAMをMemcachedインスタンスに割り当てて、ストレージ容量を増やすことをお勧めします。 ここですべての技術要件をお読みください。

MemcachedはほとんどのLinuxベースのサーバーで動作し、Memcachedのインストールは2つのLinuxコマンドだけです。 通常、Memcachedは、OSが提供するパッケージ(Debian、Ubuntuなど)からインストールする必要があります。 オペレーティングシステムが依存関係を解決し、セキュリティアップデートを処理します。

DebianまたはUbuntuユーザーの場合:

コマンド: apt-get install memcached

Redhat / Fedoraの場合:

コマンド: yum install memcached

詳細については、それぞれのOSのドキュメントを参照してください。 最も人気のあるリバースプロキシサーバーの1つであるNginxには、最も柔軟なNginxMemcachedバンドルソリューションを提供するMemcachedモジュールがあらかじめパッケージ化されています。

IdeaBox –ケーススタディ

CloudwaysがWordPressエージェンシーがより良い製品を構築するのにどのように役立ったかを読んでください。

今すぐケーススタディを入手してください!

ありがとうございました

あなたの電子ブックはあなたの受信箱に向かっています。

Memcachedが実行されているかどうかを確認します

Memcachedが実行されているかどうかをテストする方法は複数あります。 そのうちの1つは、Telnetを使用して、サーバーのSSHターミナルにログインし、以下のコマンドを記述します。

 telnet localhost 11211

また

telnet 127.0.0.1 11211

PS:ローカルサーバーがMemcachedサーバーの場合、上記のコマンドが実行されます。

上記のコマンドが正常に実行されると、次の結果が得られます。

 ローカルホストに接続しました。
エスケープ文字は「^]」です。

そうしないと、接続エラーが発生します

いくつかの基本的な統計を確認するには、以下のコマンドを使用できます: stats

以下のようなものが得られます:

 STAT pid 313
STAT稼働時間2778636
STAT時間1535727399
STATバージョン1.4.21
STAT libevent2.0.21-安定
STATポインタサイズ64
STAT rusage_user 47.119322
STAT rusage_system 48.765342
STAT curr_connections 1
STAT total_connections 151198
STAT connection_structures 3
STAT reserved_fds 20
STAT cmd_get 46
STAT cmd_set 4
STAT cmd_flush 0
STAT cmd_touch 0
STAT get_hits 30
STAT get_misses 16
STAT delete_misses 0
STAT delete_hits 0
STAT incr_misses 0
STAT incr_hits 0
STAT decr_misses 0
STAT decr_hits 0
STAT cas_misses 0
STAT cas_hits 0
STAT cas_badval 0
STAT touch_hits 0
STAT touch_misses 0
STAT auth_cmds 0
STAT auth_errors 0
STAT bytes_read 22942
STAT bytes_written 3433252
STAT limit_maxbytes 268435456
STAT accepting_conns 1
STAT listen_disabled_num 0
STATスレッド4
STAT conn_yields 0
STAT hash_power_level 16
STAT hash_bytes 524288
STAT hash_is_expanding 0
STAT malloc_fails 0
STATバイト106
STAT curr_items 1
STAT total_items 4
STAT expired_unfetched 0
STAT evicted_unfetched 0
STATエビクション0
STATは0を取り戻しました
STAT scroller_reclaimed 0
STAT lrutail_reflocked 0

アイテムを確認するには、次を使用します:統計アイテム

結果:

 STATアイテム:2:番号1
STATアイテム:2:2486歳
STATアイテム:2:退去0
STATアイテム:2:evicted_nonzero 0
STATアイテム:2:evicted_time 0
STATアイテム:2:メモリ不足0
STATアイテム:2:テールリペア0
STATアイテム:2:再生0
STATアイテム:2:expired_unfetched 0
STATアイテム:2:evicted_unfetched0
STATアイテム:2:crawler_reclaimed 0
STATアイテム:2:lrutail_reflocked 0

現在のメモリ統計を確認するには、次のように記述します。statsslabs

結果:

 STAT 2:chunk_size 120
STAT 2:chunks_per_page 8738
STAT 2:total_pages 1
STAT 2:total_chunks 8738
STAT 2:used_chunks 1
STAT 2:free_chunks 8737
STAT 2:free_chunks_end 0
STAT 2:mem_requested 106
STAT 2:get_hits 30
STAT 2:cmd_set 4
STAT 2:delete_hits 0
STAT 2:incr_hits 0
STAT 2:decr_hits 0
STAT 2:cas_hits 0
STAT 2:cas_badval 0
STAT 2:touch_hits 0
STAT active_slabs 1
STAT total_malloced 1048560

接続を終了するには、 quit入力し、Enterキーを押します

Memcachedサーバーを実行および検査するための便利なコマンドのリストがあります。

他のプラットフォームのMemcachedチュートリアル:

  • MagentoストアでMemcachedをセットアップする方法
  • PHPでMemcachedをセットアップする方法
  • JoomlaでMemcachedをセットアップする方法
  • Yii2でMemcachedをセットアップする方法
  • Memcachedを使用してPrestaShopをセットアップする方法
  • Drupal7サイトでMemcacheをセットアップする方法

Cloudwaysユーザー向けのMemcached

Cloudwaysユーザーは、WordPressMemcachedに関連するすべての技術について心配する必要はありません。 Cloudways Platformで起動されたすべてのサーバーは、プリインストールされ、アクティブ化されたMemcachedで提供されました。

それぞれのサーバー→[サービスの管理]に移動すると、 Memcachedがプリインストールされ、デフォルトでアクティブ化されていることがわかります。

Memcached WordPress

Cloudwaysのお客様ではありませんが、Memcachedを利用したいですか? クレジットカードの詳細を提供せずに無料トライアルを取得します。

WordPressMemcachedプラグイン

市場にはたくさんのWordPressキャッシュプラグインがあります。 それらのほとんどは、W3TCのようなMemcachedをサポートしています。これは、最も広く使用されているキャッシュプラグインの1つであり、Memcachedを構成できます。 W3TCユーザーの場合は、 [一般設定]タブに移動し、ドロップダウンから[Memcached]を選択します。

  • ページキャッシュ
  • キャッシュを縮小する
  • データベースキャッシュ

W3TC WordPress Memcached

すべての設定を保存し、キャッシュを一度パージすることを忘れないでください。

最終的な考え

Memcachedは、データベースの負荷を軽減し、サーバーのビジー状態を抑えてパフォーマンスとページの読み込み時間を改善するため、適切に構成されている場合にWordPressサイトを高速化する方法の1つと見なされています。