本期主持
laike9mlaixintaoAdam WenManjusakaPython 3 中列表解析已经不会泄露变量了,详见 https://portingguide.readthedocs.io/en/latest/comprehensions.htmlKeyword only argument 是在 Python 3.0 中正式加入的,详见 PEP3102有听众反馈说,Celery 劫持 root logger 是因为在实际业务中可以依赖很多第三方库,有些设计有问题的库里面打印了大量日志,会造成日志很乱,这样就不容易找到 Celery 自己的日志,所以就直接禁掉了。供大家参考。本期提要
00:00:35 嘉宾介绍00:03:15 开发中踩过的坑00:04:20 Requests UA 带来的 Github 误封问题00:08:06 单元测试遇到的坑00:11:53 非法 Cookies 引发的坑00:19:38 一个不合法的 HTTP Header00:25:01 glibc 引发的内存泄漏00:30:20 werkzeug 的 bug 复现 PR00:32:42 关于一些不好的库,文档,feature 的吐槽00:33:13 Python 的 LEGB 问题00:43:06 一些不好的库与文档, 生产环境不推荐的一些做法00:52:20 函数参数的种类00:57:11 Celery, asyncio, os 的一些槽点01:12:14 一些疑难问题排查的技巧与工具01:12:30 Py-Spy, 一个 Python 进程取样分析工具01:17:13 构造最小可复现样例01:18:30 Debug 技巧01:23:40 用 PDB 来 Debug01:26:25: pyrasite, attached 到 Python 进程的 REPL01:29:25 休息,提升 Debug 效率的方法01:30:50 能复现的 Bug 情况都是幸福的01:38:05 库与文章的推荐播客中提到的内容
Github REST API v3MockPython Cookie 标准库实现Tornado 4.0 Cookies Parse 实现RFC 7230 Section 5.4 HostFix memory leak in Rule function builderShort description of the scoping rules?lxmlKafka PythonGolang Functional options for friendly APIsBeautifulRegular expression Denial of Service - ReDoStoxNetty Request Demolinux环境内存分配原理BuildoutGoogle Python Style Guide理解Python的UnboundLocalError(Python的作用域)PEP 3102 -- Keyword-Only ArgumentsPEP 0570 -- Positional-Only ArgumentsDigg's v4 launch: an optimism born of necessity.let me google that for youceleryBPO-36054BPO-29406asynciouvloopPy-Spy: A sampling profiler for Python programs.SentryPDBpyrasiteFreezeGun: Let your Python tests travel through timeHidden features of PythonpingtopAwesome PythonClickWhat the f*ck PythonGeventPySnooperCurious Course on Coroutines and Concurrency