Python でのメモリ キャッシングの使用

Marion Paul Kenneth Mendoza 2023年6月21日
  1. Memcached モジュールをインストールする
  2. Python を使用してキャッシュされた値を設定および取得する
Python でのメモリ キャッシングの使用

Python アプリケーションを作成する場合、キャッシングは重要です。 キャッシュを使用してデータの再構成を回避したり、低速のデータベースにアクセスしたりすることで、パフォーマンスを向上させることができます。

Python では、memcached モジュールを使用して、スクリプトにメモリ キャッシュを含めることができます。 この記事では、メモリ キャッシュ操作の準備と、主要な memcached の使用について説明します。

また、Python の cacheset を使用した高度なパターンについても学習します。

Memcached モジュールをインストールする

Memcached パッケージは多くのプラットフォームで利用できます:

  • Linux の場合、yum install memcached または apt-get install memcached を使用してインストールできます。 このスクリプトは、ビルド済みパッケージから memcached パッケージをインストールします。
  • macOS の場合、最も簡単な選択は Homebrew を利用することです。 Homebrew パッケージ マネージャーをインストールしたら、brew install memcachedと入力します。
  • Windows の場合、公式の memcached Web サイト にアクセスして、memcached を自分でコンパイルする必要があります。

インストールが完了したら、memcached コマンドを呼び出して memcached を起動できます。

memcached

Python を使用してキャッシュされた値を設定および取得する

memcached パッケージは、使用したことがない場合でも簡単に理解できます。 さらに、ネットワークを介してかなりの語彙にアクセスできます。

このディクショナリは、主に次の点で従来の Python ディクショナリとは異なります。

  • 値とキーはバイト データ型である必要があります
  • 値とキーは、指定された有効期限後に自動的に削除されます

したがって、setget は、memcached を扱うための 2つの基本的な手順です。 私たちが想像したように、キーに値を与えたり、キーから値を取得したりするために使用されます。

以下のコードは、Python アプリケーションでネットワーク分散キャッシュとして memcached を利用する方法を示しています。

import memcache

mcobject = memcache.Client(["127.0.0.1:11212"], debug=0)

mcobject.set("some_key", "Some value")
value = mc.get("some_key")

mcobject.set("another_key", 3)
mcobject.delete("another_key")

mcobject.set("key", "1")
mcobject.incr("key")
mcobject.decr("key")

memcached ネットワーク プロトコルは単純です。 超高速の実装により、データの正規ソースから計算または取得するのに時間がかかるデータを格納することには利点があります。

簡単ではありますが、この例では、ネットワークを介して key-value タプルを保存し、アプリケーションの複数の分散された実行中のコピーを介してそれらにアクセスできます。

このプロセスは単純ですが強力です。 これは、アプリケーションを最適化するための重要な第一歩です。

Marion Paul Kenneth Mendoza avatar Marion Paul Kenneth Mendoza avatar

Marion specializes in anything Microsoft-related and always tries to work and apply code in an IT infrastructure.

LinkedIn

関連記事 - Python Memory Cache