gpt4 book ai didi

python - couchdbkit 比请求慢 10 倍?

转载 作者:太空狗 更新时间:2023-10-30 01:29:45 24 4
gpt4 key购买 nike

我正在玩 couchdb 和推荐的“couchdbkit”python 包。我觉得它有点慢,决定做一些测量。如果我没有做错什么,那么使用流行的“请求”包比通过 couchdbkit 快 10 倍以上。为什么?

这是我使用的计时脚本:

from time import time as now
from pprint import pprint

class Timer:
def __init__(self):
self.current = now()

def __call__(self, msg):
snap = now()
duration = snap - self.current
self.current = snap
pprint("%.3f duration -- %s" %(duration, msg))

def requests(num):
t = Timer()

import requests
for i in range(num):
r = requests.get("http://127.0.0.1:8001/releases/_design/access/_view/yieldlinks")
assert r.status_code == 200
r.json # make sure the json is there
t("requests: %d" % (num,))

def couchdbkit(num):
import couchdbkit

t = Timer()
server = couchdbkit.Server("http://127.0.0.1:8001")
releases = server.get_db("releases")
for x in range(num):
for x in releases.view("access/yieldlinks"):
pass
t("couchdbkit: %d" %(num,))

num = 500
requests(num)
couchdbkit(num)

要运行示例,您可能需要修改 View URL。我验证了这两个调用在服务器上引起了完全相同的 GET 请求。所以这似乎真的与 couchdbkit 的内部工作有关?!

最佳答案

所以我终于找到了这个问题,它实际上和这个是一样的:

CouchDB / MochiWeb : negative effect of persistent connections

简而言之,添加:

[httpd]
socket_options = [{nodelay, true}]

解决了性能差异 - 实际上 couchdbkit/restkit 现在快了一点。

关于python - couchdbkit 比请求慢 10 倍?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13807706/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com