こんな感じのコードで動いた。
#!/usr/bin/env python2.7 # -*- coding:utf-8 -*- import socket from pprint import pprint # 接続処理 sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) sock.connect( ("localhost", 11211) ) # 変なシンタックスハイライトが走るのでスペース入れておく # key fooにデータをセット res = sock.send("set foo 0 0 3 \r\n123\r\n") results = sock.recvfrom(1024) print results # key fooからデータをゲット sock.send("get foo\n\n") results = sock.recv(1024) print results.split() # 他の値もとってみる sock.send("get baz\n\n") results = sock.recv(1024) print results.split() # statsを渡して統計情報を受け取ることも可能 sock.send("stats\n\n") print sock.recv(1024) sock.close() #sock.shutdown()
memcacheプロトコルの理解にはまだまだ道が長そうだ。
第1回 memcachedの基本:memcachedを知り尽くす|gihyo.jp … 技術評論社 memcached/doc/protocol.txt at master · memcached/memcached · GitHub memcachedプロトコルについて « さくらインターネット研究所