1. 程式人生 > >2018年5月17日筆記

2018年5月17日筆記

最大 返回值 onf delete 常用操作 all 描述 app 筆記

  • python操作redis

set操作

sadd(name, values)  增加

scard(name)    獲取

spop(name)    刪除並返回set中的一個隨機元素

srem(name, value)  刪除set中的一個指定元素

sunion(keys)    返回指定集合的並集

sinter(keys)    返回指定集合的交集

hash操作

hset(name, key, value)  設置單個元素

hmset(name, {"k1": "v1", "k2": "v2"}  設置多個元素

hget(name, key)  獲取單個元素

hmget(name, keys)  獲取多個元素

hkeys(name)  獲取name對應的所有key

hvalues(name)  獲取name對應的所有value

hgetall(name)  返回指定name對應的keys和values (返回值長度是哈希表大小的2倍)

hexists(name, key)  判斷key是否存在

hdel(name, keys)  刪除key

hlen(name)  獲取長度(name中key的個數)

!!!重點掌握 string 和 hash 的操作 !!!

適用於所有類型(string/ list/ set/ zset/ hash)的常用操作

r.keys()  查看所有key

r.delete(names)  刪除keys

r.exists(name)  判斷是否存在

r.rename(src, dst)  替換key

r.expire(name, time)  設置超時時間,超時後會刪除對應的key

r.type(name)  查看屬於哪種redis數據類型

r.move(name, db)  將name從原來db移動至指定db下

r.flushall()  刪除所有

  • 安裝memcached

cd /usr/local/src

wget http://memcached.org/latest

tar -zxvf memcached-1.x.x.tar.gz

cd memcached-1.x.x

./configure && make && make test && make install

客戶端

pip install python-memcached

啟動memcached

memcached -d -m 10 -u root -l 127.0.0.1 -p 12000 -c 256 -P /tmp/memcached.pid

參數說明

參數描述
-d 是啟動一個守護進程
-m 是分配給Memcache使用的內存數量,單位是MB
-u 是運行Memcache的用戶
-l 是監聽的服務器IP地址
-p 是設置Memcache監聽的端口,最好是1024以上的端口
-c 選項是最大運行的並發連接數,默認是1024,按照你服務器的負載量來設定
-P 是設置保存Memcache的pid文件

  • memcached天生支持集群

python-memcached模塊原生支持集群操作,其原理是在內存維護一個主機列表,且集群中主機的權重值和主機在列表中出現的次數成正比

主機    權重

1.1.1.1    1

1.1.1.2    2

1.1.1.3    1

# 那麽在內存中主機列表為:

  host_list = ["1.1.1.1", "1.1.1.2", "1.1.1.2", "1.1.1.3"]

  • python操作memcached

set(key, value)

get(key)

replace(key, new_key)

set = add + replace

delete(key)

get_multi([k1, k2, k3])

append(k, appendvalue)

prepend(k, prependvalue)

stats

2018年5月17日筆記