Memcachedは、無料のオープンソースの高性能インメモリキーバリューデータストアです。これは通常、APIおよびデータベース呼び出しの結果からさまざまなオブジェクトをキャッシュすることによってアプリケーションを高速化するために使用されます。
この記事では、Debian10にMemcachedをインストールして設定する方法を説明します。
前提条件#
Debianシステムにパッケージをインストールするには、sudoアクセス権を持つユーザーとしてログインする必要があります。
Debian 10へのMemcachedのインストール#
memcachedパッケージは、デフォルトのUbuntu20.04リポジトリに含まれています。これをインストールするには、rootまたはsudo権限を持つユーザーとして次のコマンドを入力します。
sudo apt update
sudo apt install memcached libmemcached-tools
libmemcached-tools
パッケージは、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 Fri 2020-08-14 14:22:01 CDT; 3min 40s ago
Docs: man:memcached(1)
...
それでおしまい。これで、Debian10サーバーにMemcachedが正常にインストールされました。
Memcachedの構成#
Memcachedオプションは、/etc/memcached.conf
で構成できます ファイル。ほとんどのユーザーにとって、デフォルトの構成設定で十分です。
Memcachedサービスはローカルホストでのみリッスンします。サーバーに接続しているクライアントも同じホストで実行されている場合は、デフォルトの構成ファイルを変更する必要はありません。
適切に構成されていない場合、Memcachedを使用して分散型サービス拒否(DDoS)攻撃を実行できます。 Memcachedサーバーへのリモート接続を許可するには、ファイアウォールを構成し、信頼できるクライアントからのみMemcachedUDPポート11211へのアクセスを許可する必要があります。
次の例では、プライベートネットワークを介して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への接続#
さまざまなプログラミング言語用に作成されたmemcachedクライアントの実装は多数あります。
PHP#
MemcachedをWordPress、Drupal、MagentoなどのPHPアプリケーションのキャッシュデータベースとして使用するには、php-memcached
をインストールする必要があります。 拡張子:
sudo apt install php-memcached
Python#
memcacheと対話するためのPythonライブラリがいくつかあります。 pipを使用して好みのライブラリをインストールできます:
pip install pymemcache
pip install python-memcached