redis Python 客户端网络IO性能

 

在Python下一般使用redis-py, 或者在此基础上的redisco;

测试环境:

在100Mb/s 局域网

服务器: redis 2.4 rc8/rhel6.0

客户端:Python2.7.2/Win7

import datetime

def test1(string):
    import redis
    r = redis.StrictRedis(host='211.69.*', port=6379, db=1)
    now = datetime.datetime.now()
    for i in range(0,10000):
        r.set(i, string)
    print datetime.datetime.now() - now    

def test2(string):
    import redisco
    from redisco.containers import Hash,List,SortedSet,Set
    r = redisco.connection_setup(host='211.69.*', port=6379, db=1)
    h = Hash("h")
    now = datetime.datetime.now()
    for i in range(0,10000):
        h[i] = string
    print datetime.datetime.now() - now  
    
if  __name__=="__main__":
    string = "0"
    test1(string)
    test2(string)

结果:CPU不是瓶颈,大约1000写操作/s,比传输中的10W差的远了,看来网络IO是不小的瓶颈。而且不在于传输的数据量,而在于操作次数

 

你可能感兴趣的:(redis,性能,python,测试,客户端)