PHP 如何读取大文件( 1G 文本文件),并且正则匹配查找内容

2017-08-09 14:38:29 +08:00
 solaro

如题 现在实际业务项目中,目前只能想到用切割 并且参照了如下的文章,读取速度是挺快的,但是要怎么正则匹配出我想要的内容(说白了就是全文搜索) http://blog.csdn.net/jinxingfeng_cn/article/details/52042834

现在的业务需求是:尽量保证扫一遍 1G 文件得在 3 秒内响应。 preg_match_all。。。这个直接用到文件上,好卡好卡好卡

求大神给个思路或者实现方式

4806 次点击
所在节点    问与答
22 条回复
solaro
2017-08-11 13:23:30 +08:00
@nullen 实际业务需求是这样的:公司存在大量的业务日志文件,每个日志文件的大小在生成的时候就设定为 1G,超出之后会再创建新的,由于系统被攻击,现在需要找出大量攻击 IP (全文搜索),preg_match_all 搜索,全都在阿里云上的生产环境里面,所以日志多达几百 G,需要对所有所有日志进行文本搜索,找出攻击者,并屏蔽
solaro
2017-08-11 13:24:23 +08:00
@nullen 除了找出攻击者,还要看攻击者都发送了什么命令进行攻击。想看它都干了什么

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/381656

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX