日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

python 串行執(zhí)行和并行執(zhí)行實(shí)例

瀏覽:28日期:2022-07-27 08:25:38

我就廢話不多說了,大家還是直接看代碼吧!

#coding=utf-8 import threading import time import cx_Oracle from pprint import pprint import csv print time.asctime() table_name = 'dbtest.csv' f = open(table_name + '.csv', 'w') conn = cx_Oracle.connect(’tlcbuser/tlcbuser@20.5.101.31/tlyy’) cursor = conn.cursor() def query01(): tname = threading.current_thread() aa=10 # cursor.execute('SELECT * FROM TEST100 WHERE ID = %s', [aa]) cursor.prepare('''SELECT * FROM TEST100 WHERE ID=:id''') cursor.execute(None,{’id’:aa}) row = cursor.fetchall() print row return row cursor.close() def query02(): tname = threading.current_thread() aa=20 # cursor.execute('SELECT * FROM TEST100 WHERE ID = %s', [aa]) cursor.prepare('''SELECT * FROM TEST100 WHERE ID=:id''') cursor.execute(None,{’id’:aa}) row = cursor.fetchall() print row return row cursor.close() def query03(): tname = threading.current_thread() aa=30 # cursor.execute('SELECT * FROM TEST100 WHERE ID = %s', [aa]) cursor.prepare('''SELECT * FROM TEST100 WHERE ID=:id''') cursor.execute(None,{’id’:aa}) row = cursor.fetchall() print row return row cursor.close() def query04(): tname = threading.current_thread() aa=40 # cursor.execute('SELECT * FROM TEST100 WHERE ID = %s', [aa]) cursor.prepare('''SELECT * FROM TEST100 WHERE ID=:id''') cursor.execute(None,{’id’:aa}) row = cursor.fetchall() print row return row def query05(): tname = threading.current_thread() aa=50 # cursor.execute('SELECT * FROM TEST100 WHERE ID = %s', [aa]) cursor.prepare('''SELECT * FROM TEST100 WHERE ID=:id''') cursor.execute(None,{’id’:aa}) row = cursor.fetchall() print row return row cursor.close() def query06(): tname = threading.current_thread() aa=60 # cursor.execute('SELECT * FROM TEST100 WHERE ID = %s', [aa]) cursor.prepare('''SELECT * FROM TEST100 WHERE ID=:id''') cursor.execute(None,{’id’:aa}) row = cursor.fetchall() print row return row cursor.close() def query07(): tname = threading.current_thread() aa=70 # cursor.execute('SELECT * FROM TEST100 WHERE ID = %s', [aa]) cursor.prepare('''SELECT * FROM TEST100 WHERE ID=:id''') cursor.execute(None,{’id’:aa}) row = cursor.fetchall() return row cursor.close() def query08(): tname = threading.current_thread() aa=80 # cursor.execute('SELECT * FROM TEST100 WHERE ID = %s', [aa]) cursor.prepare('''SELECT * FROM TEST100 WHERE ID=:id''') cursor.execute(None,{’id’:aa}) row = cursor.fetchall() print row return row cursor.close() def query09(): tname = threading.current_thread() aa=90 # cursor.execute('SELECT * FROM TEST100 WHERE ID = %s', [aa]) cursor.prepare('''SELECT * FROM TEST100 WHERE ID=:id''') cursor.execute(None,{’id’:aa}) row = cursor.fetchall() print row return row cursor.close() def query10(): tname = threading.current_thread() aa=100 # cursor.execute('SELECT * FROM TEST100 WHERE ID = %s', [aa]) cursor.prepare('''SELECT * FROM TEST100 WHERE ID=:id''') cursor.execute(None,{’id’:aa}) row = cursor.fetchall() print row return row cursor.close() threads = [] t1 = threading.Thread(target=query01, name=’query01’) threads.append(t1) t2 = threading.Thread(target=query02, name=’query02’) threads.append(t2) t2 = threading.Thread(target=query03, name=’query03’) threads.append(t2) t2 = threading.Thread(target=query04, name=’query04’) threads.append(t2) t2 = threading.Thread(target=query05, name=’query05’) threads.append(t2) t2 = threading.Thread(target=query06, name=’query06’) threads.append(t2) t2 = threading.Thread(target=query07, name=’query07’) threads.append(t2) t2 = threading.Thread(target=query08, name=’query08’) threads.append(t2) t2 = threading.Thread(target=query09, name=’query09’) threads.append(t2) t2 = threading.Thread(target=query10, name=’query10’) threads.append(t2) if __name__ == ’__main__’: for t in threads: # t.setDaemon(True) t.start() # t.run() # t.start() # print ’3333333’ print threading.current_thread() # print t.is_alive() # print ’3333333’ t.join() print 'all over ' print time.asctime() C:Python27python.exe C:/Users/tlcb/PycharmProjects/untitled/a2.py Wed Mar 28 11:08:19 2018 <_MainThread(MainThread, started 18744)> [(10, ’10boobook10’, ’10aaaaaaaaaaaa10’, ’10bbbbbbbbbbbbbbbbb10’), (10, ’10sssssssss10’, ’tlcb’, ’tlcb’), (10, ’10boobook10’, ’10aaaaaaaaaaaa10’, ’10bbbbbbbbbbbbbbbbb10’)] <_MainThread(MainThread, started 18744)> [(20, ’20boobook20’, ’20aaaaaaaaaaaa20’, ’20bbbbbbbbbbbbbbbbb20’), (20, ’20boobook20’, ’20aaaaaaaaaaaa20’, ’20bbbbbbbbbbbbbbbbb20’), (20, ’20boobook20’, ’20aaaaaaaaaaaa20’, ’20bbbbbbbbbbbbbbbbb20’)] <_MainThread(MainThread, started 18744)> [(30, ’30boobook30’, ’30aaaaaaaaaaaa30’, ’30bbbbbbbbbbbbbbbbb30’), (30, ’30boobook30’, ’30aaaaaaaaaaaa30’, ’30bbbbbbbbbbbbbbbbb30’), (30, ’30boobook30’, ’30aaaaaaaaaaaa30’, ’30bbbbbbbbbbbbbbbbb30’)] <_MainThread(MainThread, started 18744)> [(40, ’40boobook40’, ’40aaaaaaaaaaaa40’, ’40bbbbbbbbbbbbbbbbb40’), (40, ’40boobook40’, ’40aaaaaaaaaaaa40’, ’40bbbbbbbbbbbbbbbbb40’), (40, ’40boobook40’, ’40aaaaaaaaaaaa40’, ’40bbbbbbbbbbbbbbbbb40’)] <_MainThread(MainThread, started 18744)> [(50, ’50boobook50’, ’50aaaaaaaaaaaa50’, ’50bbbbbbbbbbbbbbbbb50’), (50, ’50boobook50’, ’50aaaaaaaaaaaa50’, ’50bbbbbbbbbbbbbbbbb50’), (50, ’50boobook50’, ’50aaaaaaaaaaaa50’, ’50bbbbbbbbbbbbbbbbb50’)] <_MainThread(MainThread, started 18744)> [(60, ’60boobook60’, ’60aaaaaaaaaaaa60’, ’60bbbbbbbbbbbbbbbbb60’), (60, ’60boobook60’, ’60aaaaaaaaaaaa60’, ’60bbbbbbbbbbbbbbbbb60’), (60, ’60boobook60’, ’60aaaaaaaaaaaa60’, ’60bbbbbbbbbbbbbbbbb60’)] <_MainThread(MainThread, started 18744)> <_MainThread(MainThread, started 18744)> [(80, ’80boobook80’, ’80aaaaaaaaaaaa80’, ’80bbbbbbbbbbbbbbbbb80’), (80, ’80boobook80’, ’80aaaaaaaaaaaa80’, ’80bbbbbbbbbbbbbbbbb80’), (80, ’80boobook80’, ’80aaaaaaaaaaaa80’, ’80bbbbbbbbbbbbbbbbb80’)] <_MainThread(MainThread, started 18744)> [(90, ’90boobook90’, ’90aaaaaaaaaaaa90’, ’90bbbbbbbbbbbbbbbbb90’), (90, ’90boobook90’, ’90aaaaaaaaaaaa90’, ’90bbbbbbbbbbbbbbbbb90’), (90, ’90boobook90’, ’90aaaaaaaaaaaa90’, ’90bbbbbbbbbbbbbbbbb90’)] <_MainThread(MainThread, started 18744)> [(100, ’100boobook100’, ’100aaaaaaaaaaaa100’, ’100bbbbbbbbbbbbbbbbb100’), (100, ’100boobook100’, ’100aaaaaaaaaaaa100’, ’100bbbbbbbbbbbbbbbbb100’), (100, ’100boobook100’, ’100aaaaaaaaaaaa100’, ’100bbbbbbbbbbbbbbbbb100’)] all over Wed Mar 28 11:08:34 2018 Process finished with exit code 0 這個(gè)時(shí)候是串行 花費(fèi)了15秒 多線程跑: #coding=utf-8 import threading import time import cx_Oracle from pprint import pprint import csv print time.asctime() table_name = 'dbtest.csv' f = open(table_name + '.csv', 'w') def query01(): tname = threading.current_thread() aa=10 conn = cx_Oracle.connect(’tlcbuser/tlcbuser@20.5.101.31/tlyy’) cursor = conn.cursor() # cursor.execute('SELECT * FROM TEST100 WHERE ID = %s', [aa]) cursor.prepare('''SELECT * FROM TEST100 WHERE ID=:id''') cursor.execute(None,{’id’:aa}) row = cursor.fetchall() print row return row cursor.close() conn.close() def query02(): tname = threading.current_thread() aa=20 conn = cx_Oracle.connect(’tlcbuser/tlcbuser@20.5.101.31/tlyy’) cursor = conn.cursor() # cursor.execute('SELECT * FROM TEST100 WHERE ID = %s', [aa]) cursor.prepare('''SELECT * FROM TEST100 WHERE ID=:id''') cursor.execute(None,{’id’:aa}) row = cursor.fetchall() print row return row cursor.close() conn.close() def query03(): tname = threading.current_thread() aa=30 conn = cx_Oracle.connect(’tlcbuser/tlcbuser@20.5.101.31/tlyy’) cursor = conn.cursor() # cursor.execute('SELECT * FROM TEST100 WHERE ID = %s', [aa]) cursor.prepare('''SELECT * FROM TEST100 WHERE ID=:id''') cursor.execute(None,{’id’:aa}) row = cursor.fetchall() print row return row cursor.close() conn.close() def query04(): conn = cx_Oracle.connect(’tlcbuser/tlcbuser@20.5.101.31/tlyy’) cursor = conn.cursor() tname = threading.current_thread() aa=40 # cursor.execute('SELECT * FROM TEST100 WHERE ID = %s', [aa]) cursor.prepare('''SELECT * FROM TEST100 WHERE ID=:id''') cursor.execute(None,{’id’:aa}) row = cursor.fetchall() print row return row cursor.close() conn.close() def query05(): conn = cx_Oracle.connect(’tlcbuser/tlcbuser@20.5.101.31/tlyy’) cursor = conn.cursor() tname = threading.current_thread() aa=50 # cursor.execute('SELECT * FROM TEST100 WHERE ID = %s', [aa]) cursor.prepare('''SELECT * FROM TEST100 WHERE ID=:id''') cursor.execute(None,{’id’:aa}) row = cursor.fetchall() print row return row cursor.close() conn.close() def query06(): conn = cx_Oracle.connect(’tlcbuser/tlcbuser@20.5.101.31/tlyy’) cursor = conn.cursor() tname = threading.current_thread() aa=60 # cursor.execute('SELECT * FROM TEST100 WHERE ID = %s', [aa]) cursor.prepare('''SELECT * FROM TEST100 WHERE ID=:id''') cursor.execute(None,{’id’:aa}) row = cursor.fetchall() print row return row cursor.close() conn.close() def query07(): conn = cx_Oracle.connect(’tlcbuser/tlcbuser@20.5.101.31/tlyy’) cursor = conn.cursor() tname = threading.current_thread() aa=70 # cursor.execute('SELECT * FROM TEST100 WHERE ID = %s', [aa]) cursor.prepare('''SELECT * FROM TEST100 WHERE ID=:id''') cursor.execute(None,{’id’:aa}) row = cursor.fetchall() return row cursor.close() conn.close() def query08(): conn = cx_Oracle.connect(’tlcbuser/tlcbuser@20.5.101.31/tlyy’) cursor = conn.cursor() tname = threading.current_thread() aa=80 # cursor.execute('SELECT * FROM TEST100 WHERE ID = %s', [aa]) cursor.prepare('''SELECT * FROM TEST100 WHERE ID=:id''') cursor.execute(None,{’id’:aa}) row = cursor.fetchall() print row return row cursor.close() conn.close() def query09(): conn = cx_Oracle.connect(’tlcbuser/tlcbuser@20.5.101.31/tlyy’) cursor = conn.cursor() tname = threading.current_thread() aa=90 # cursor.execute('SELECT * FROM TEST100 WHERE ID = %s', [aa]) cursor.prepare('''SELECT * FROM TEST100 WHERE ID=:id''') cursor.execute(None,{’id’:aa}) row = cursor.fetchall() print row return row cursor.close() conn.close() def query10(): conn = cx_Oracle.connect(’tlcbuser/tlcbuser@20.5.101.31/tlyy’) cursor = conn.cursor() tname = threading.current_thread() aa=100 # cursor.execute('SELECT * FROM TEST100 WHERE ID = %s', [aa]) cursor.prepare('''SELECT * FROM TEST100 WHERE ID=:id''') cursor.execute(None,{’id’:aa}) row = cursor.fetchall() print row return row cursor.close() conn.close() threads = [] t1 = threading.Thread(target=query01, name=’query01’) threads.append(t1) t2 = threading.Thread(target=query02, name=’query02’) threads.append(t2) t2 = threading.Thread(target=query03, name=’query03’) threads.append(t2) t2 = threading.Thread(target=query04, name=’query04’) threads.append(t2) t2 = threading.Thread(target=query05, name=’query05’) threads.append(t2) t2 = threading.Thread(target=query06, name=’query06’) threads.append(t2) t2 = threading.Thread(target=query07, name=’query07’) threads.append(t2) t2 = threading.Thread(target=query08, name=’query08’) threads.append(t2) t2 = threading.Thread(target=query09, name=’query09’) threads.append(t2) t2 = threading.Thread(target=query10, name=’query10’) threads.append(t2) if __name__ == ’__main__’: for t in threads: # t.setDaemon(True) t.start() # t.run() # t.start() # print ’3333333’ print threading.current_thread() # print t.is_alive() # print ’3333333’ t.join() print 'all over ' print time.asctime() C:Python27python.exe C:/Users/tlcb/PycharmProjects/untitled/a2.py Wed Mar 28 11:12:47 2018 <_MainThread(MainThread, started 22500)> <_MainThread(MainThread, started 22500)> <_MainThread(MainThread, started 22500)> <_MainThread(MainThread, started 22500)> <_MainThread(MainThread, started 22500)> <_MainThread(MainThread, started 22500)> <_MainThread(MainThread, started 22500)> <_MainThread(MainThread, started 22500)> <_MainThread(MainThread, started 22500)> <_MainThread(MainThread, started 22500)> [(40, ’40boobook40’, ’40aaaaaaaaaaaa40’, ’40bbbbbbbbbbbbbbbbb40’), (40, ’40boobook40’, ’40aaaaaaaaaaaa40’, ’40bbbbbbbbbbbbbbbbb40’), (40, ’40boobook40’, ’40aaaaaaaaaaaa40’, ’40bbbbbbbbbbbbbbbbb40’)] [(60, ’60boobook60’, ’60aaaaaaaaaaaa60’, ’60bbbbbbbbbbbbbbbbb60’), (60, ’60boobook60’, ’60aaaaaaaaaaaa60’, ’60bbbbbbbbbbbbbbbbb60’), (60, ’60boobook60’, ’60aaaaaaaaaaaa60’, ’60bbbbbbbbbbbbbbbbb60’)] [(80, ’80boobook80’, ’80aaaaaaaaaaaa80’, ’80bbbbbbbbbbbbbbbbb80’), (80, ’80boobook80’, ’80aaaaaaaaaaaa80’, ’80bbbbbbbbbbbbbbbbb80’), (80, ’80boobook80’, ’80aaaaaaaaaaaa80’, ’80bbbbbbbbbbbbbbbbb80’)] [(50, ’50boobook50’, ’50aaaaaaaaaaaa50’, ’50bbbbbbbbbbbbbbbbb50’), (50, ’50boobook50’, ’50aaaaaaaaaaaa50’, ’50bbbbbbbbbbbbbbbbb50’), (50, ’50boobook50’, ’50aaaaaaaaaaaa50’, ’50bbbbbbbbbbbbbbbbb50’)] [(10, ’10boobook10’, ’10aaaaaaaaaaaa10’, ’10bbbbbbbbbbbbbbbbb10’), (10, ’10sssssssss10’, ’tlcb’, ’tlcb’), (10, ’10boobook10’, ’10aaaaaaaaaaaa10’, ’10bbbbbbbbbbbbbbbbb10’)] [(20, ’20boobook20’, ’20aaaaaaaaaaaa20’, ’20bbbbbbbbbbbbbbbbb20’), (20, ’20boobook20’, ’20aaaaaaaaaaaa20’, ’20bbbbbbbbbbbbbbbbb20’), (20, ’20boobook20’, ’20aaaaaaaaaaaa20’, ’20bbbbbbbbbbbbbbbbb20’)] [(30, ’30boobook30’, ’30aaaaaaaaaaaa30’, ’30bbbbbbbbbbbbbbbbb30’), (30, ’30boobook30’, ’30aaaaaaaaaaaa30’, ’30bbbbbbbbbbbbbbbbb30’), (30, ’30boobook30’, ’30aaaaaaaaaaaa30’, ’30bbbbbbbbbbbbbbbbb30’)] [(100, ’100boobook100’, ’100aaaaaaaaaaaa100’, ’100bbbbbbbbbbbbbbbbb100’), (100, ’100boobook100’, ’100aaaaaaaaaaaa100’, ’100bbbbbbbbbbbbbbbbb100’), (100, ’100boobook100’, ’100aaaaaaaaaaaa100’, ’100bbbbbbbbbbbbbbbbb100’)] [(90, ’90boobook90’, ’90aaaaaaaaaaaa90’, ’90bbbbbbbbbbbbbbbbb90’), (90, ’90boobook90’, ’90aaaaaaaaaaaa90’, ’90bbbbbbbbbbbbbbbbb90’), (90, ’90boobook90’, ’90aaaaaaaaaaaa90’, ’90bbbbbbbbbbbbbbbbb90’)] all over Wed Mar 28 11:12:55 2018 Process finished with exit code 0 此時(shí)花了 8秒

補(bǔ)充知識:python logging定制logstash的json日志格式

最近一直在折騰日志的收集,現(xiàn)在算是收尾了。 寫一篇算python優(yōu)化logstash的方案。

其實(shí)大家都知道logstash調(diào)用grok來解析日志的話,是要消耗cpu的成本的,畢竟是需要正則的匹配的。

根據(jù)logstash調(diào)優(yōu)的方案,咱們可以預(yù)先生成json的格式。 我這邊基本是python的程序,怎么搞尼 ?

有兩種方法,第一種方法是生成json后,直接打入logstash的端口。 還有一種是生成json寫入文件,讓logstash做tail操作的時(shí)候,把一行的日志數(shù)據(jù)直接載入json就可以了。

python下的日志調(diào)試用得時(shí)logging,改成json也是很好改得。 另外不少老外已經(jīng)考慮到這樣的需求,已經(jīng)做了python logstash的模塊。

import loggingimport logstashimport syshost = ’localhost’test_logger = logging.getLogger(’python-logstash-logger’)test_logger.setLevel(logging.INFO)test_logger.addHandler(logstash.LogstashHandler(host, 5959, version=1))# test_logger.addHandler(logstash.TCPLogstashHandler(host, 5959, version=1))test_logger.error(’python-logstash: test logstash error message.’)test_logger.info(’python-logstash: test logstash info message.’)test_logger.warning(’python-logstash: test logstash warning message.’)# add extra field to logstash messageextra = { ’test_string’: ’python version: ’ + repr(sys.version_info), ’test_boolean’: True, ’test_dict’: {’a’: 1, ’b’: ’c’}, ’test_float’: 1.23, ’test_integer’: 123, ’test_list’: [1, 2, ’3’],}test_logger.info(’python-logstash: test extra fields’, extra=extra)

python-logstash自帶了amqp的方案

import loggingimport logstash# AMQP parametershost = ’localhost’username = ’guest’password= ’guest’exchange = ’logstash.py’# get a logger and set logging leveltest_logger = logging.getLogger(’python-logstash-logger’)test_logger.setLevel(logging.INFO)# add the handlertest_logger.addHandler(logstash.AMQPLogstashHandler(version=1, host=host, durable=True, username=username, password=password, exchange=exchange))# logtest_logger.error(’python-logstash: test logstash error message.’)test_logger.info(’python-logstash: test logstash info message.’)test_logger.warning(’python-logstash: test logstash warning message.’)try: 1/0except: test_logger.exception(’python-logstash: test logstash exception with stack trace’)

不管怎么說,最后生成的格式是這樣就可以了。

{ '@source'=>'unknown', '@type'=>'nginx', '@tags'=>[], '@fields'=>{ 'remote_addr'=>'192.168.0.1', 'remote_user'=>'-', 'body_bytes_sent'=>'13988', 'request_time'=>'0.122', 'status'=>'200', 'request'=>'GET /some/url HTTP/1.1', 'request_method'=>'GET', 'http_referrer'=>'http://www.example.org/some/url', 'http_user_agent'=>'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.1 (KHTML, like Gecko) Chrome/21.0.1180.79 Safari/537.1' }, '@timestamp'=>'2012-08-23T10:49:14+02:00'}

我這里簡單提一下,這個(gè)模塊用的不是很滿意,我在python下把日志打成了json字符串,我原本以為會像grok那樣,在Es里面,我的這條日志是個(gè)字段的結(jié)構(gòu),而不是這個(gè)日志都在message里面…. 我想大家應(yīng)該明白了我的意思,這樣很是不容易在kibana的搜索…

在kibana搜索,我經(jīng)常上 source:xxx AND level:INFO 結(jié)果正像上面描述的那樣,整條日志,都在@message里面。

以上這篇python 串行執(zhí)行和并行執(zhí)行實(shí)例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Python 編程
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
日韩精品久久久久久久电影99爱| 久久久精品日韩| 91国语精品自产拍| 午夜久久中文| 久久视频一区| 亚洲国产福利| 九九精品调教| 91精品国产调教在线观看| 亚洲风情在线资源| 久久久天天操| 国产精品99一区二区| 婷婷六月综合| 黄色成人精品网站| 免费在线观看日韩欧美| 日韩精品一区第一页| 亚洲有吗中文字幕| 日韩精品成人在线观看| 日韩va亚洲va欧美va久久| 亚洲va久久| 国产精品一区二区av交换| 国产精品亚洲综合在线观看| 精品伊人久久久| 亚洲欧洲美洲av| 国产综合激情| 亚洲欧美日韩高清在线| 日韩制服丝袜av| 婷婷综合电影| 日韩国产一二三区| 国产欧美69| 精品久久电影| 久久久人人人| 免费观看日韩电影| 国产一级成人av| 黄色欧美在线| 亚洲成人一区在线观看| 久久天堂成人| 中文字幕一区日韩精品| 国产欧美日韩精品一区二区三区| 麻豆精品蜜桃视频网站| 久久激情婷婷| 亚洲精品伦理| 精品日本视频| 女人av一区| 日韩欧美美女在线观看| 欧美国产极品| 久久在线电影| 日韩国产一区二| 国产粉嫩在线观看| 午夜在线视频一区二区区别| 国产日韩一区二区三免费高清 | 日韩精品一区二区三区中文| 国产精品亚洲成在人线| 91精品xxx在线观看| 亚洲三级精品| 吉吉日韩欧美| 亚洲欧美日本国产| 天堂av在线| 亚洲一区二区三区在线免费| 精品一区二区男人吃奶| 免费在线观看精品| 色欧美自拍视频| 亚洲欧美日韩综合国产aⅴ| 日韩精品乱码av一区二区| 中文在线免费视频| 亚洲精品欧美| 日韩免费福利视频| 日韩美女国产精品| 999久久久精品国产| 欧美影院视频| 久久免费高清| 欧美亚洲三区| 午夜免费一区| 精品视频在线一区二区在线| 性色av一区二区怡红| 久久婷婷国产| 亚洲资源网站| 欧美肉体xxxx裸体137大胆| 蜜桃久久av一区| 国产精品久久观看| 无码日韩精品一区二区免费| 99久精品视频在线观看视频| 国产精品多人| 亚洲一区免费| 免费高潮视频95在线观看网站| 日韩一区二区三区精品视频第3页| 丝袜美腿诱惑一区二区三区| 欧美中文一区| 亚洲永久字幕| 精品一区二区三区中文字幕在线| 免费在线观看视频一区| 久久麻豆精品| 精品国内亚洲2022精品成人| 亚洲综合三区| 成人免费电影网址| 精品中国亚洲| 国产美女视频一区二区| 亚洲欧美日韩综合国产aⅴ| 99tv成人| 88xx成人免费观看视频库| 欧美国产精品| 国产精品最新| 综合激情在线| 日韩亚洲国产欧美| 日韩在线观看一区| 精品中文字幕一区二区三区| 日韩精品91亚洲二区在线观看| aⅴ色国产欧美| 黄在线观看免费网站ktv| 免费视频一区二区三区在线观看| 日本成人在线网站| 男人的天堂久久精品| 99热精品在线观看| 免费欧美一区| 国产99亚洲| 久久久一本精品| 日韩伦理在线一区| 精品视频在线一区二区在线| 国产欧美69| 国产精品一区二区av交换| 欧美一级网址| 欧美视频二区| 青青草91视频| 一区二区三区国产盗摄| 国产亚洲午夜| 亚洲欧美激情诱惑| 亚洲一区亚洲| 亚洲永久精品唐人导航网址| 久热综合在线亚洲精品| 亚洲深爱激情| 国产一区导航| 三级在线观看一区二区| 丝袜亚洲精品中文字幕一区| 亚洲主播在线| 亚洲精品激情| 日本欧美在线| 国产精品啊v在线| 麻豆精品久久| 国产在线日韩精品| 国产精品麻豆久久| 三级精品视频| 黄色成人精品网站| 日韩在线a电影| 日韩精品亚洲aⅴ在线影院| 日韩高清不卡一区二区| 国产精品一区三区在线观看| 精品久久一区| 高清不卡亚洲| 欧美大黑bbbbbbbbb在线| av不卡在线| 啪啪亚洲精品| 精品免费视频| 欧美手机在线| 午夜影院欧美| 亚洲+小说+欧美+激情+另类| 国产日韩欧美中文在线| 久久影视三级福利片| av中文资源在线资源免费观看| 91精品国产成人观看| 国产视频一区免费看| 日韩av电影一区| 久久精品亚洲一区二区| 日韩一区欧美| 亚洲免费影院| 国产毛片精品| 日韩欧美字幕| 丝袜脚交一区二区| 国产欧美一区| 精品视频网站| 欧美午夜精品一区二区三区电影| 日韩视频久久| 欧美一级二级视频| 人人精品亚洲| 日本不卡视频在线观看 | 国产欧美日韩视频在线| 91亚洲国产| 亚洲免费婷婷| 九九九精品视频| 国产视频久久| 美女免费视频一区| 91成人精品| 国产精品最新| 欧美一区久久久| 婷婷综合福利| 日韩精品永久网址| 亚洲性视频在线| 久久久久久网| 亚洲色图国产| 精品三级久久| 欧美日一区二区三区在线观看国产免 | 一本综合精品| 国产一区二区三区视频在线| 在线午夜精品| 麻豆高清免费国产一区| 99精品小视频| 国产精品资源| 亚洲一区二区三区免费在线观看| 久久伊人国产| 亚洲日韩中文字幕一区| 国内一区二区三区| 亚洲精品日韩久久|