SimpleDao
Python使用gdb调试
2019-05-06, 访问数: 1380
调试运行进程gdb -p pid 增加libpython来获取更多调试信息 a)下载python2.7的源码中的Tools/gdb/libpython.pyb)引入libpython.py# 在gdb -p pid之后运行(gdb) python>import sys>sys.path.append('/path/to/libpython.py')>import libpython>end(gdb) c)之后可使用命令py-bt py-bt-full py-down py-list py-locals py-print py-up 注:python2.6的源码中提...
Python性能调试profile
2019-05-06, 访问数: 1258
工具 cProfile:基于lsprof的用C语言实现的扩展应用,运行开销比较合理,适合分析运行时间较长的程序profile:纯Python实现的性能分析模块,接口和cProfile一致。但在分析程序时增加了很大的运行开销。不过,如果想扩展profiler的功能,可以通过继承这个模块实现 基本用法python -m cProfile -s cumulative test.py 结果说明 ncalls:表示函数调用的次数tottime:表示指定函数的总的运行时间,除掉函数中调用子函数的运行时间percall:(第一个percall)等于 tottime/ncallscumtime:表示该函...
Python 序列化json 包含中文
2019-05-06, 访问数: 910
序列化json包含中文html_dict = {'key': 'value'}json_str = json.dumps(html_dict, ensure_ascii=False, encoding='utf-8')
压缩def gzip_compress(buf, compresslevel=6): out = StringIO.StringIO() f = gzip.GzipFile(fileobj=out, mode="w", compresslevel=compresslevel) f.write(buf) f.close() res = out.getvalue() return res 解压缩def gzip_decompress(buf): obj = StringIO.StringIO(buf) f = gzip.GzipFile(fil...
Python执行shell命令
2019-05-06, 访问数: 982
popendef _command_execute(command_s): """执行命令,例如command_s=['ls', '-al']""" sp = Popen(command_s, stdout=PIPE, stderr=STDOUT, close_fds=True) output_content = '' for line in iter(sp.stdout.readline, b''): output_content += line if len(output_content) > 1024 * 4: ...
grep常用操作命令
2019-05-06, 访问数: 1026
示例grep -C 2 abc app.log 主要参数-c: 只输出匹配行的计数-I: 不区分大 小写(只适用于单字符)-h: 查询多文件时不显示文件名-l: 查询多文件时只输出包含匹配字符的文件名-n: 显示匹配行及 行号-s: 不显示不存在或无匹配文本的错误信息-v: 显示不包含匹配文本的所有行-C: 显示上下文多少行 pattern正则表达式主要参数\: 忽略正则表达式中特殊字符的原有含义^: 匹配正则表达式的开始行$: 匹配正则表达式的结束行\<: 从匹配正则表达 式的行开始\>: 到匹配正则表达式的行结束[ ]: 单个字符,如[A]即A符合要求[ - ]: 范...
supervisor配置
2019-05-06, 访问数: 1125
安装pip install supervisor 生成配置文件echo_supervisord_conf > /home/stat/venv/web/etc/supervisord.conf 配置gunicorn的运行程序[program:myapp]command=/home/stat/venv/web/bin/gunicorn -w4 -b0.0.0.0:2170 myapp:appdirectory=/path/myprojectautorestart=true 常用命令指定配置文件则加上 -c supervisord.conf # 通过配置文件启动supervisorsu...
安装扩展包Virtaulenvwrapper是virtualenv的扩展包,用于更方便管理虚拟环境 pip install virtualenvwrapper 设置环境在~/.bashrc中添加有一些是在 /usr/bin/virtualenvwrapper.sh source /usr/local/bin/virtualenvwrapper.sh 设置完后要运行一次source /usr/local/bin/virtualenvwrapper.sh 常用命令# 创建一个tmp的环境mkvirtualenv tmp# 切换到tmp的环境workon tmp# 退出环境deactivate...
Linux设置虚拟内存
2019-05-04, 访问数: 1183
决定修改swap大小首先在空间合适处创建用于分区的swap文件 dd if=/dev/zero of=/swap/swap bs=1024 count=4194304 将目的文件设置为swap分区文件mkswap /swap/swap 激活swap,立即启用交换分区文件swapon /swap/swap 查看free -m 开机时自启用修改文件/etc/fstab中的swap行 /swap/swap swap swap defaults 0 0 swappinesscheck cat /proc/sys/vm/swappinessedit sudo vim /etc/sysct...