示例#1
0
文件: dbWorker.py 项目: weijia/ufs
def processor(reqQ, resQ):
    gDbDict = {}
    while True:
        reqType, key, dbName, value = reqQ.get()
        print 'get req for %s'%dbName
        try:
            db = gDbDict[dbName]
        except KeyError:
            db = dictShoveDb.getDbV4(dbName)
            gDbDict[dbName] = db

        if '0' == reqType:
            #End req
            return
        if '1' == reqType:
            #Query
            try:
                resQ.put(db[key])
                print 'find %s = %s'%(key, db[key])
            except KeyError:
                print '%s not exist'%key.encode('gb2312', 'replace')
                resQ.put([])
        if '2' == reqType:
            print 'set:%s = %s'%(key.encode('gb2312', 'replace'),value.encode('gb2312', 'replace'))
            db[key] = value
示例#2
0
 '''
 def handle_read(self):
     global gData
     gData += self.recv(8192)
     l = gData.split('\n')
     while len(l) > 4:
         #Have a total request, process it
         reqType = unicode(l[0])
         key = unicode(l[1])
         value = unicode(l[2])
         dbName = unicode(l[3])
         print 'get req for %s'%dbName
         try:
             db = gDbDict[dbName]
         except KeyError:
             db = dictShoveDb.getDbV4(dbName)
             gDbDict[dbName] = db
         self.processRequest(reqType, key, value, db)
         l = l[4:]