We're sunsetting PodQuest on 2025-07-28. Thank you for your support!
Export Podcast Subscriptions
cover of episode  Ep 02. 开发中的碎碎念

Ep 02. 开发中的碎碎念

2019/5/4
logo of podcast  捕蛇者说

捕蛇者说

Shownotes Transcript

本期主持

勘误:

  • Python 3 中列表解析已经不会泄露变量了,详见 https://portingguide.readthedocs.io/en/latest/comprehensions.html)

  • Keyword 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 Header

  • 00:25:01) glibc 引发的内存泄漏

  • 00:30:20) werkzeug 的 bug 复现 PR

  • 00: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 来 Debug

  • 01:26:25: pyrasite, attached 到 Python 进程的 REPL

  • 01:29:25) 休息,提升 Debug 效率的方法

  • 01:30:50) 能复现的 Bug 情况都是幸福的

  • 01:38:05) 库与文章的推荐

播客中提到的内容

爱发电上赞助)