有人可能已经解决了这个问题。我需要一个基于 Python 的 UDP 接口,它从数据库查询返回结果。数据库仅限于每 8 小时提供 500 个查询。这是我的逻辑,它似乎有点工作。
但我确实有一个 8 小时的移动窗口,这意味着我可以在几秒钟内很快查询数据库。我基本上是正确的。任何人都有一个聪明的可重用代码,我可以使用它吗?
#!/usr/bin/env python
import SocketServer
import sys,os,httplib,urllib,multiprocessing,time
import syslog
import sqlite3 as lite
syslog.openlog(sys.argv[0],syslog.LOG_PID,syslog.LOG_USER)
count_d=0
stime=int(time.time())
def oprocess(vars):
global count_d,stime
dtime=int(time.time())-stime
score="Unknown"
if count_d > 500:
if dtime < 28800:
syslog.syslog("Exceeded q limit "+str(dtime)+","+str(count))
return "Unknown"
else: # Reset the clock
stime=time.time()
count_d=0
data=dbh.do("SELECT...") # Some DB query
if data != None:
count_d=count_d+1
return data
谢谢维杰