小编mud*_*dda的帖子

为什么Python中的线程MySQLdb查询比相同的非线程查询慢?

我正在构建一个使用Python和MySQLdb运行MySQL查询的线程类.我不明白为什么运行这些查询线程比运行非线程更慢.这是我的代码,以显示我正在做什么.

首先,这是非线程函数.

def testQueryDo(query_list):

    db = MySQLdb.connect('localhost', 'user', 'pass', 'db_name')
    cursor = db.cursor()

    q_list = query_list
    for each in q_list:
        cursor.execute(each)
        results = cursor.fetchall()

    db.close()
Run Code Online (Sandbox Code Playgroud)

这是我的线程类:

class queryThread(threading.Thread):

    def __init__(self, queue):
        threading.Thread.__init__(self)
        self.queue = queue

        self.db = MySQLdb.connect('localhost', 'user', 'pass', 'db_name')
        self.cursor = self.db.cursor()

    def run(self):
        cur_query = self.queue.get()
        self.cursor.execute(cur_query)
        results = self.cursor.fetchall()
        self.db.close()
        self.queue.task_done()
Run Code Online (Sandbox Code Playgroud)

这是处理程序:

def queryHandler(query_list):
    queue = Queue.Queue()

    for query in query_list:
        queue.put(query)

    total_queries = len(query_list)
    for query in range(total_queries):
        t = queryThread(queue)
        t.setDaemon(True)
        t.start()

    queue.join()
Run Code Online (Sandbox Code Playgroud)

我不确定为什么这个线程代码运行得更慢.有趣的是,如果我使用相同的代码,只能做一些简单的像另外的数字,螺纹代码 …

python mysql multithreading

6
推荐指数
1
解决办法
4689
查看次数

如何防止 Splunk SDK for Javascript 使用我的代理环境变量?

我不是 100% 确定,但我相信 splunk-sdk 正在使用我的代理环境变量。由于我们的应用程序代理的工作限制,我无法从 Node.js 访问 Splunk。我想知道如何防止 splunk-sdk 使用应用程序代理。

var splunkjs = require('splunk-sdk');

var service = new splunkjs.Service({
    username: process.env.SPLUNK_USER,
    password: process.env.SPLUNK_PW,
    scheme: 'https',
    host: 'my.splunk.server',
    port: '8089',
    autologin: true
});

var search_term = 'somethingsomethingdarkside'
var fields = 'field1,field2,field3';
var searchquery = `search index=* sourcetype=* ${search_term} | fields ${fields} | fields - _raw`
var searchParams = {
    earliest_time: '-1h',
    latest_time: 'now',
    output_mode: 'json'
}


service.oneshotSearch(searchquery, searchParams, function(err, results) {
    if (err) {
        console.log(err)
    }
    else {
        console.log(results.results);
    }
}); …
Run Code Online (Sandbox Code Playgroud)

javascript proxy splunk node.js

5
推荐指数
0
解决办法
708
查看次数

标签 统计

javascript ×1

multithreading ×1

mysql ×1

node.js ×1

proxy ×1

python ×1

splunk ×1