python3 交互 memcached

2022-04-13 00:00:00 专区 订阅 示例 付费 工具

python3-memcached

Github地址: https://github.com/eguven/python3-memcached

在这个Github库可用看到使用的相关示例,访问这里。

在此基础上,我将其相关方法封装一个工具类,方便后续调用。

使用pip3安装python3-memcached库

pip3 install python3-memcached

编写工具类示例

import memcache

class MemcachedHelper():

def __init__(self,ip,port):
connect = str(ip) + ':' + str(port)
self.mc = memcache.Client([connect], debug=)

def set_key(self,key,value):
return self.mc.set(key,value)

def get_key(self,key):
return self.mc.get(key)

def delte_key(self,key):
return self.mc.delete(key)

def incr_key(self,key):
return self.mc.incr(key)

def decr_key(self,key):
return self.mc.decr(key)

def set_muti(self,keys_values_dict):
return self.mc.set_multi(keys_values_dict)

def get_multi(self,keys_list):
return self.mc.get_multi(keys_list)

def del_multi(self,keys_list):
return self.mc.delete_multi(keys_list)

def get_stats(self):
return self.mc.get_stats()[][1]

def print_stats_info(self):
stats_dict = self.mc.get_stats()[][1]
for key in stats_dict:
print("%s , %s" % (key.decode(encoding='utf-8'), stats_dict[key].decode(encoding='utf-8')))

def get_stats_info(self,name):
return self.mc.get_stats()[][1][name.encode(encoding="utf-8")].decode(encoding='utf-8')

def get_info_cmd_set(self):
return self.mc.get_stats()[][1][b'cmd_set'].decode(encoding='utf-8')



def main():
mh = MemcachedHelper('192.168.196.129',11211)

mh.print_stats_info()

print("==============================")

print("curr_items = %s" % mh.get_stats_info('curr_items'))

if __name__ == '__main__':
main()

执行如下:

D:\Python37\python3.exe D:/pythonProject/memcached_test/test3.py
pid , 910
uptime , 17386
time , 1557058095
version , 1.4.15
libevent , 2.0.21-stable
pointer_size , 64
rusage_user , 6.542740
rusage_system , 4.809214
curr_connections , 11
total_connections , 7561
connection_structures , 1005
reserved_fds , 20
cmd_get , 30
cmd_set , 2774817
cmd_flush ,
cmd_touch ,
get_hits , 27
get_misses , 3
delete_misses ,
delete_hits , 3
incr_misses ,
incr_hits , 3
decr_misses ,
decr_hits , 3
cas_misses ,
cas_hits ,
cas_badval ,
touch_hits ,
touch_misses ,
auth_cmds ,
auth_errors ,
bytes_read , 2904242070
bytes_written , 22245593
limit_maxbytes , 67108864
accepting_conns , 1
listen_disabled_num , 58
threads , 4
conn_yields , 85668
hash_power_level , 16
hash_bytes , 524288
hash_is_expanding ,
bytes , 61553823
curr_items , 55759
total_items , 2774823
expired_unfetched ,
evicted_unfetched , 2680427
evictions , 2680427
reclaimed ,
==============================
curr_items = 55759

Process finished with exit code

来源 https://www.modb.pro/db/46536

相关文章