PHP   发布时间:2022-04-04  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了适用于Python和PHP的异步日志记录策略大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

情况是这样的:我们有很多python脚本不断地工作,最终在MysqL中写入数据,并且需要一个日志来分析错误率和脚本性能.

我们还具有与MysqL数据进行交互的PHP前端,我们还需要记录用户操作,以便我们可以分析其行为并计算一些评分函数.
因此,我们想到了每种情况都有一个MysqL表表(一个用于“ python脚本”日志,一个用于“用户操作”日志).

理想情况下,出于性能和低延迟的原因,我们将异步写入这些日志表.有没有办法在Python(我们使用django ORM)和PHP(我们使用Yii Framework)中做到这一点?

解决这个问题的更好方法吗?

更新:
  对于用户操作(Web UI),我们现在正在虑通过简单的Apache配置自动将Apache Log和相关的会话信息加载到MysqL

解决方法:

PHP中,只有(AFAIK)两种方法可以异步执行任何操作:

>分叉过程(需要pcntl_fork)
> exec()一个进程,并通过(假定* niX)附加>将其释放/ dev / null&到命令字符串的末尾.

这两种方法都会导致创建一个新过程,尽管这是暂时的,所以是否能提高性能尚有待商and,并且在很大程度上取决于您的服务器环境-我怀疑这会使情况变得更糟,而不是更好.如果您的数据库负载非常大(因此使您的工作缓慢),则可以通过将日志消息转储到文件中,并拥有一个后台驻留程序脚本(可以爬网以便内容输入数据库)来获得更快的结果-但是,这是否有帮助尚待商..

Python supports multi-threading使生活变得更加轻松.

大佬总结

以上是大佬教程为你收集整理的适用于Python和PHP的异步日志记录策略全部内容,希望文章能够帮你解决适用于Python和PHP的异步日志记录策略所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: