
Memcachedは、無料のオープンソースの高性能インメモリキーバリューデータストアです。これは通常、APIおよびデータベース呼び出しの結果からさまざまなオブジェクトをキャッシュすることによってアプリケーションを高速化するために使用されます。
この記事では、Ubuntu20.04にMemcachedをインストールして構成する方法を示します。
Memcachedのインストール#
memcachedパッケージは、デフォルトのUbuntu20.04リポジトリに含まれています。これをインストールするには、rootまたはsudo権限を持つユーザーとして次のコマンドを入力します。
sudo apt update
sudo apt install memcached libmemcached-tools
libmemcached-tools
packageは、memcachedサーバーの管理に使用できるコマンドラインユーティリティを提供します。 インストールが完了すると、memcachedサービスが自動的に開始されます。サービスのステータスを確認するには、次のように入力します。
sudo systemctl status memcached
出力は次のようになります:
● memcached.service - memcached daemon
Loaded: loaded (/lib/systemd/system/memcached.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2020-07-13 19:32:01 UTC; 23s ago
これで、Ubuntu 20.04サーバーにmemcachedがインストールされ、使用を開始できます。
Memcachedの構成#
Memcachedオプションは、/etc/memcached.conf
で構成できます ファイル。デフォルトでは、memcachedはローカルホストでのみリッスンするように設定されています。
ほとんどのユーザーにとって、デフォルトの構成設定で十分です。
memcachedに接続しているクライアントが同じホストで実行されている場合は、リモートアクセスを許可しないでください。
不適切に構成されている場合、memcachedを使用して分散型サービス拒否(DDoS)攻撃を実行できます。 memcachedサーバーへのリモートアクセスを許可するには、ファイアウォールを構成し、信頼できるクライアントからのみmemcachedUDPポート11211を開く必要があります。
次の例では、プライベートネットワークを介してmemcachedサーバーに接続することを想定しています。 memcachedサーバーのIPは192.168.100.20
です 、およびクライアントのIPアドレスは192.168.100.30
。
最初のステップは、memcached構成を編集し、サーバーのプライベートネットワークインターフェースでリッスンするようにサービスを設定することです。
これを行うには、memcached.conf
を開きます 構成ファイル:
sudo nano /etc/memcached.conf
-l 127.0.0.1
で始まる行を見つけます 127.0.0.1
を置き換えます サーバーのIPアドレス192.168.100.20
。
-l 192.168.100.20
変更を有効にするには、Memcachedサービスを再起動します。
sudo systemctl restart memcached
サービスが構成されたら、次のステップはファイアウォールでmemcachedポートを開くことです。
sudo ufw allow from 192.168.100.30 to any port 11211
Memcachedへの接続#
さまざまなプログラミング言語用に作成されたmemcachedクライアントの実装は多数あります。
PHP#
MemcachedをWordPress、Drupal、Joomla、MagentoなどのPHPアプリケーションのキャッシングデータベースとして使用するには、php-memcached
をインストールする必要があります。 拡張子:
sudo apt install php-memcached
Python#
memcacheと対話するためのPythonライブラリがいくつかあります。 pipを使用して好みのライブラリをインストールできます:
pip install pymemcache
pip install python-memcached