如何加速用python编写的couchdb视图
我正在用python编写couchdb视图。我觉得不太。。。pythonic做一些类似的事情如何加速用python编写的couchdb视图,python,couchdb,Python,Couchdb,我正在用python编写couchdb视图。我觉得不太。。。pythonic做一些类似的事情 def fun(doc): import re # do something with re yield 1, 1 因为re适用于导入的每个文档。将import re放在开头会给我一个错误(字符串应该编译成正确的函数),一个 在视图的末端,使函数中的re不可用 那么,如何避免一次又一次地导入re呢?View server处理许多具有相同上下文的文档。所以,import re只在
def fun(doc):
import re
# do something with re
yield 1, 1
因为re适用于导入的每个文档。将import re放在开头会给我一个错误(字符串应该编译成正确的函数),一个
在视图的末端,使函数中的re不可用
那么,如何避免一次又一次地导入re呢?View server处理许多具有相同上下文的文档。所以,
import re
只在处理第一个文档时才真正导入模块。所有其他map
调用将只查找sys.modules
如果您使用re模块,那么正则表达式和它们的编译方式可能会比删除模块查找更快(python中的字典非常快)。我不明白你为什么要在函数的末尾delre
,这可能会减慢速度
您是否有办法对此进行计时,以便在调整视图时可以测量改进/回归?建立一些定时将使调整更加容易。我最近也遇到了同样的问题,解决方法如下:
import re
def foo(doc, re_xx=re.compile("required-pattern")):
# use re_xx
yield 1, 1
del re
耶,这就是我一直在寻找的。
import re
def foo(doc, re_xx=re.compile("required-pattern")):
# use re_xx
yield 1, 1
del re