编程开源技术交流,分享技术与知识

网站首页 > 开源技术 正文

程序脚本如何更高效写日志(怎样写脚本到应用程序)

wxchong 2024-08-07 01:55:05 开源技术 38 ℃ 0 评论

开发时经常要写日志,比如排查问题用的日志、业务需要的日志。PHPer初期写日志的方式大多是用file_put_content、error_log或fopen、flock、fwrite系列函数,但当遇到高并发场景时,因为文件锁争抢及PHP本身是非编译型语言等原因,PHP提供的写日志方式就不够高效。

借鉴PHP扩展seaslog的写日志方式,采用以下几种手段可以更高效的写日志。

1、 先将日志放到内存buffer中,当请求结束或内存buffer满之后将数据刷入文件。

2、采用句柄复用,每个请求尽量只打开一次文件,减少锁的争抢。

3、 采用非独享锁, 不采用独享锁,提高性能。

4、 先响应数据给客户端(如利用fastcgi_finish_request函数),再异步写日志。

5、采用go、C++、C等编译型语言,相对于PHP是预编译好的代码,执行效率会更高。

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表