麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

Python守護進程(多線程開發)

2019-11-14 17:43:58
字體:
來源:轉載
供稿:網友

本段代碼主要作用是httpsqs隊列的消費端守護進程,從httpsqs中取出數據,放入mongodb

#!/usr/bin/pythonimport sys,time,json,loggingimport Queue, threading, datetimefrom lib.base.daemon import Daemonfrom lib.queue.httpsqs.HttpsqsClient import HttpsqsClientfrom lib.db.DbMongodb import DbMongodblogging.basicConfig(level=logging.DEBUG,                format='%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s',                datefmt='%a, %d %b %Y %H:%M:%S',                filename='myapp.log',                filemode='w')                queue = Queue.Queue()       httpsqs = HttpsqsClient('192.168.0.218','1218','httpsqs.com')db = DbMongodb('192.168.0.119','testdb')        class ThreadGetHttpSqs(threading.Thread):    def __init__(self):        threading.Thread.__init__(self)        self.httpsqs = httpsqs        self.queue = queue        def run(self):        while True:            data = self.httpsqs.get('logtest')            if data is not None:                self.queue.put(data)                logging.info('get:id %s , tablename %s' % (self.getName(),data))            else:                time.sleep(3)                                    class ThreadInsertDB(threading.Thread):    def __init__(self):        threading.Thread.__init__(self)        self.queue = queue        self.db = db            def run(self):        while True:            chunk = self.queue.get()            s = json.loads(chunk)            tablename = s['table']            data = s['data']            self.db.save(tablename,data)            logging.info('insert:id %s , tablename %s' % (self.getName(),tablename))            self.queue.task_done()            class MyDaemon(Daemon):    def _run(self):        while True:            for i in range(2):                t = ThreadGetHttpSqs()                #t.setDaemon(True)                t.start()                        for i in range(2):                b = ThreadInsertDB()                #t.setDaemon(True)                b.start()            #線程已經為永真循環,進程不能再循環            time.wait()                                           if __name__ == "__main__":    daemon = MyDaemon('/tmp/daemon-example.pid')    if len(sys.argv) == 2:        if 'start' == sys.argv[1]:            daemon.start()        elif 'stop' == sys.argv[1]:            daemon.stop()        elif 'restart' == sys.argv[1]:            daemon.restart()        else:            PRint "Unknown command"            sys.exit(2)        sys.exit(0)    else:        print "usage: %s start|stop|restart" % sys.argv[0]        sys.exit(2)

 


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 欧美日韩亚洲精品一区二区三区 | 免费观看黄色影片 | 插插操 | 在线播放视频一区二区 | 久久男人的天堂 | 成人午夜淫片a | 中文字幕一区二区三区四区 | 久久一区二区三区av | 黄视频在线网站 | 做羞羞视频 | 久久久tv| 国产99久久精品一区二区 | 毛片大全免费 | 日韩一级精品 | 欧美3p激情一区二区三区猛视频 | h视频在线免费看 | 毛片一级免费看 | 毛片成人网 | 一级视频网站 | 毛片午夜 | 女人一级一级毛片 | 好吊色欧美一区二区三区四区 | 亚洲爱爱网站 | 国产精品久久久久久久不卡 | 精品黑人一区二区三区国语馆 | 激情亚洲一区二区 | 亚洲国产色婷婷 | 久久精品国产久精国产 | 91丨九色丨国产在线观看 | 日本在线播放一区二区 | 中文字幕在线观看免费 | 欧美一级淫片007 | 久久丝袜脚交足黄网站免费 | 国内自拍网址 | 久久影院国产精品 | 色吧综合网 | 久久小视频 | 免费a视频在线观看 | 成人精品一区二区 | 国产精品视频自拍 | 国产69精品久久久久99尤 |