我想以一种快速的方式将关于请求的信息存储到我的网站,这不会给我的数据库带来额外的压力。我们的目标是使用这些信息来防止滥用和收集用户如何与网站互动(ip,GET/POST,url/action,timestamp)的信息。批量保存到数据库的大批量日志记录?
我正在保存每个页面请求到数据库的新行。但是,当服务器也已经将相同的信息记录到nginx日志文件时,这会浪费额外的数据库调用资源。
我想知道我能做些什么来更好地处理这个问题,我有两个想法,我想知道是否有更好的方法。
- CRON作业每天解析访问日志并保存为批量事务到数据库。
- RAM缓存(redis/memcached)存储关于请求的数据,然后CRON保存到数据库。
但是,我不知道如何使用键值缓存以我可以检索所有记录并将它们插入数据库的方式存储数据。
我也不知道如何解析访问日志的方式,我不会重新读取条目。
如何以有效的方式记录访问尝试?