zoukankan      html  css  js  c++  java
  • tsdb import 相关

    今天一直在做opentsdb 大量导入数据的工作。 中间遇到了一些值得记录的问题, 这里随手记一下 明天好好整理

    1. 多进程logger

    python的logging模块不支持多进程,但我们可以用syslog模块 把进程写给linux/unix的syslog服务。

    syslog 有local 0 - 7 8个通道。 把一个通道配置到你的日志文件 然后写入即可

    2. 多进程

    apply_async 这个函数有点奇怪。下面的代码df如果是string就可以。如果不是string, 那么子进程好像不会运行。。

    #!/usr/bin/python
    __author__ = 'mingwli'
    import syslog
    import multiprocessing
    from multiprocessing import Pool
    import pydevd
    
    syslog.openlog('file: %s' % "My file", 0, syslog.LOG_LOCAL0)
    
    def write_log(f):
            syslog.syslog('Log msg: %s' % 'test msg')
    
    pool = Pool(processes=20)
    result = []
    mylist = range(0, 20)
    for df in mylist:
        result.append(pool.apply_async(write_log, (str(df))))
    
    pool.close()
    pool.join()
    print "all done"
  • 相关阅读:
    数据库连接池技术
    选择存储引擎的基本原则
    建索引原则
    数据库应用优化
    PDO
    关于cookie和session
    php常见漏洞及分析
    随便写
    spring 注入
    idea导入eclipse项目
  • 原文地址:https://www.cnblogs.com/kramer/p/4759080.html
Copyright © 2011-2022 走看看