业务场景, 每天产生百万左右的日志,总量过亿, 准即时分析
1.不需要使用复杂的技术栈, PHP本身即可处理, 时间也可接受
2.可简单使用多开CLI进程的方式,每个CLI对应一个日志源, 不需要引入多线程之类的技术, 适合日志源较固定的业务场景.
3.提前过滤不需要保留的日志,如:爬虫, 业务中无用的日志, 我的业务场景 中可过滤掉90%的无效 日志
4.事先确认分析需求, 只根据需求对日志进行分析. 此处详解
a.我使用第三方UA解析库对 UA进行分析,结果详细,但占用CPU过高,处理时间不理想
b.根据业务需求,只分析是否爬虫以及操作系统(android,iOS,其它), 这样分析速度提升一个数量级
5.多种PHP技术并用: 本地文件缓存, 精细设计断点续操作, 批量插入数据库, 人性化的界面输出.
6.对异常进行分析, 有些异常使用简单的延时重试即可处理.
7.最重要的, 是要相信PHP, 如果有PHP不能实现的功能 , 那只是因为你的水平不够, 而不是PHP的问题.