zoukankan      html  css  js  c++  java
  • 今天测试了一下 sqlalchemy 性能

    self.db.query(Users).filter(Users.Id==1).first() < self.db.execute('SELECT *  FROM `users` WHERE Id=%s' % user_id).first() < self.db.queryRow('SELECT * FROM `users` WHERE `Id`=%s' % user_id)

    sqlalchemy的echo=False的

    ab测试如下:
    ab -n 2000 -c 50 http://127.0.0.1:8888/

    self.db.query(Users).filter(Users.Id==1).first()  的 

    Requests per second:    460.00左右 [#/sec] (mean)

    self.db.execute('SELECT *  FROM `users` WHERE Id=%s' % user_id).first() 

    Requests per second:    860.00左右 [#/sec] (mean)

    下面这个为 MySQLdb

    self.db.queryRow('SELECT * FROM `users` WHERE `Id`=%s' % user_id)

    Requests per second:    1110.00左右 [#/sec] (mean)

    在想是否是用MySQLdb好呢还是用sqlalchemy好。

    这MySQLdb我也改了下代码的:基本的CRUD如下:

        db = db(host='localhost', user='root', passwd='password', port=3306, db='test', charset='utf8');
        #row = db.queryRow('SELECT @@version')
        row = db.queryRow('SELECT   `id`,  `name` FROM `test` WHERE id=2')
        if(row):
            print row['name']
        else:
            print '123'
        
        data = {}
        data['UserName'] = "mytest??"
        data['Email'] = "my2@test.com"
        data["Age"] = 26
        data["money"] = 6254.258
        #data['bc']="def"
        #data['flt']=38.5
        #添加数据
        #print db.execute_insert('mytb',data)
        #修改数据
        print db.execute_update('mytb', data, {'id':1, "Age":24})
        row = db.queryRow('select * from mytb where id = %s', (2))
        print row['UserName']
        
        for item in db.queryAll('select * from mytb'):
            print item['UserName']

     据说 amysql  的性能比MySQLDb 快2.5倍。 

  • 相关阅读:
    团队冲刺第一阶段第三天
    团队冲刺第一阶段第二天
    团队冲刺第一阶段第一天
    学习进度07
    学习进度06
    结对编程之子数组最大的和(由于一直登不上我的账号,在规定日期内只在我搭档的博客上交了)
    小学四则运算网页版
    团队介绍
    学习进度条05
    111
  • 原文地址:https://www.cnblogs.com/myx/p/sqlalchemy-benchmark.html
Copyright © 2011-2022 走看看