ドキュメントCommerce設定ガイド

PaaS のみ

Ubuntu での memcached の設定

最終更新日: 2024年7月18日
  • トピック:
  • 設定
  • キャッシュ

作成対象:

  • 経験者
  • 管理者
  • 開発者

このセクションでは、Ubuntu に memcached をインストールする手順を説明します。

INFO
Adobeでは、memcached バージョン 3.0.5 以降を使用することをお勧めします。

PHP は memcache をネイティブでサポートしていないので、それを使用するには PHP 用の拡張モジュールをインストールする必要があります。 PHP には 2 つの拡張モジュールがあり、どちらを使用するかをデコードすることが重要です。

  • memcache (no d) – 定期的にメンテナンスされていない、古いが一般的な拡張機能。
    memcache 拡張モジュールは現在 PHP 7 で動作します 動作しません。 memcache に関する PHP のドキュメントを参照してください。

    Ubuntu の正確な名前は php5-memcache です。

  • memcached (とd) – PHP 7 と互換性のある、新しくメンテナンスされた拡張機能です。 memcached に関する PHP のドキュメントを参照してください。

    Ubuntu の正確な名前は php5-memcached です。

Ubuntu での memcached のインストールと設定

Ubuntu に memcached をインストールして設定するには:

  1. root 権限を持つユーザーとして、次のコマンドを入力します。

    apt-get -y update
    
    apt-get -y install php5-memcached memcached
    
  2. CACHESIZE および -l の memcached 設定を変更します。

    1. /etc/memcached.conf をテキストエディターで開きます。

    2. -m パラメーターを見つけます。

    3. その値を少なくとも 1GB に変更します

    4. -l パラメーターを見つけます。

    5. 値を 127.0.0.1 または localhost に変更します

    6. memcached.conf への変更を保存し、テキストエディターを終了します。

    7. memcached を再起動します。

      service memcached restart
      
  3. Web サーバーを再起動します。

    Apache の場合、service apache2 restart

  4. 次の節に進みます。

Magentoをインストールする前に memcached が動作することを確認します。

Adobeでは、Commerceをインストールする前に、memcached をテストして機能することを確認することをお勧めします。 この操作には数分しかかかりません。また、後でトラブルシューティングを簡略化することもできます。

memcached が Web サーバで認識されることを確認します。

memcached が Web サーバで認識されることを確認するには、次の手順に従います。

  1. Web サーバーの docroot に phpinfo.php ファイルを作成します。

    <?php
    // Show all information, defaults to INFO_ALL
    phpinfo();
    
  2. Web ブラウザーでそのページに移動します。 例:

    http://192.0.2.1/phpinfo.php
    
  3. memcached が次のように表示されていることを確認します。

    Web サーバーで memcached が認識されていることを確認する

    memcached バージョン 3.0.5 以降を使用していることを確認します。

    memcached が表示されない場合は、web サーバーを再起動してブラウザーページを更新します。 それでも表示されない場合は、php-pecl-memcached 拡張機能をインストールしたことを確認します。

memcached がデータをキャッシュできることを検証

このテストでは、PHP スクリプトを使用して、memcached がキャッシュデータを格納および取得できることを検証します。

このテストについて詳しくは、Ubuntu で Memcache をインストールして使用する方法チュートリアルを参照してください。

Web サーバーの docroot に、次の内容の cache-test.php を作成します。

$meminstance = new Memcached();

$meminstance->addServer("<memcached hostname or ip>", <memcached port>);

$result = $meminstance->get("test");

if ($result) {
    echo $result;
} else {
    echo "No matching key found. Refresh the browser to add it!";
    $meminstance->set("test", "Successfully retrieved the data!") or die("Could not save anything to memcached...");
}

ここで、<memcached hostname or ip> は localhost、127.0.0.1、memcache ホスト名または IP アドレスのいずれかです。 <memcached port> はリッスンポートです(デフォルトは 11211)。

Web ブラウザーでそのページに移動します。 例:

http://192.0.2.1/cache-test.php

ページに初めて移動すると、次の内容が表示されます。No matching key found. Refresh the browser to add it!

ブラウザーを更新します。 メッセージが「Successfully retrieved the data!」に変わります

最後に、Telnet を使用して memcache キーを確認できます。

telnet localhost <memcache port>

プロンプトに対して、と入力します。

stats items

結果は次のようになります。

STAT items:2:number 1
STAT items:2:age 106
STAT items:2:evicted 0
STAT items:2:evicted_nonzero 0
STAT items:2:evicted_time 0
STAT items:2:outofmemory 0
STAT items:2:tailrepairs 0
STAT items:2:reclaimed 0
STAT items:2:expired_unfetched 0
STAT items:2:evicted_unfetched 0

memcached ストレージをフラッシュし、Telnet を終了します。

flush_all
quit

Telnet テストに関する追加情報

recommendation-more-help
386822bd-e32c-40a8-81c2-ed90ad1e198c