😽
Goでmemcachedを使ってみる
Ubuntu環境のGoからmemcachedを使う手順
Ubuntuの設定
memcachedのインストール
sudo apt install memcached
設定ファイルは/etc/memcached.conf
状態はsystemctl status memcached
で確認
起動しているポート番号やIPアドレスが分かる
/usr/bin/memcached -m 64 -p 11211 -u memcache -l 127.0.0.1 -P /var/run/memcached/memcached.pid
コマンドラインでの操作方法
よく使うコマンド
- 接続
telnet localhost 11211
- データ取得
get [KEYを入力]
- データの一覧をみる
stats cachedump 1 100
- データ全件削除
flush_all
Goの設定
ライブラリのインストール
go get github.com/bradfitz/gomemcache/memcache
ライブラリのドキュメント
コード例
キャッシュの有無で動作を変えたいような場合
import (
"github.com/bradfitz/gomemcache/memcache"
)
var (
mc *memcache.Client
)
func main() {
mc = memcache.New("127.0.0.1:11211")
defer mc.Close()
var it *memcache.Item
it, err = mc.Get("KEY")
if err != nil {
// キャッシュになかった
mc.Set(&memcache.Item{Key: "KEY", Value: "VALUE"})
} else {
// キャッシュあった
val = it.Value
}
}
Discussion