对于使用 python/Django 编写的 Web 应用程序,日志记录量是否会影响 Web 性能?
对于 Go,我可以启动一个 goroutine 来异步写入日志,但是据我所知,python 日志记录是同步的,日志写入是请求处理的一部分。但是,与访问数据库或呈现模板等其他事件相比,它通常需要多少时间?我应该担心吗?
我没有使用任何特定的日志记录处理程序,只是写入普通日志文件。
我知道我可以调整日志记录级别以减少生成的日志量,但我仍然希望在不严重影响性能的情况下保留尽可能多的日志。
请您参考如下方法:
如果您担心 I/O 延迟(一个有效的问题),您可以使用 QueueHandler/QueueListener 从 Web 应用程序登录到队列,如文档 here . QueueListener 可以在单独的线程上运行,并防止您的请求处理程序线程陷入记录 I/O 的泥潭。如果您使用的是 Python 2.x,则 QueueHandler/QueueListener 在 logutils 中可用。 PyPI 上的包。
