免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
123下一页
最近访问板块 发新帖
查看: 7769 | 回复: 20

要做一个B/S系统的 用户操作日志系统! [复制链接]

论坛徽章:
0
发表于 2010-01-06 13:11 |显示全部楼层
多用户平台! 按30万用户,同时1万人在线设计!

要对每个用户的操作步骤,详细记录!

大家有什么方案!

我的想法是用C/C++写一个日志服务用户 存储于查询!

再用php执行shell脚步来把post get发送到日志服务中!


第二个方法是用memcached做中转!


php将日志信息存在memcached中,日志服务定时访问memcached来处理压缩日志信息用于存储


现在 一是担心php执行shell 效率! 而是查询日志可能变的比较繁琐

论坛徽章:
0
发表于 2010-01-06 13:14 |显示全部楼层
用缓存,用到shell的地方 php一般都能解决

论坛徽章:
0
发表于 2010-01-06 13:37 |显示全部楼层
你的意思你用memcache中转了!

但是日志永久存储信息!  不可能永远存在memcached里面!

用memcached中转之后,再想查询某个用户的日志信息的时候! 就麻烦了!

论坛徽章:
0
发表于 2010-01-06 13:54 |显示全部楼层
1-3 秒更新一次缓存不见得会影响查询吧
我看最大的问题是读写一致的处理

论坛徽章:
0
发表于 2010-01-06 15:22 |显示全部楼层
我的意思是! 缓存总不是用来存储的!  一年下来日志几十个G 肯定要存储到其他地方的!

那就存在你说的  读写一致的问题了! 确实麻烦!

论坛徽章:
0
发表于 2010-01-06 16:35 |显示全部楼层
既然叫缓存了,那必然按一定规律定时定量更新到持久化设备中。

这时缓存存在以下过程

加锁->[日志写入等待]->读取日志并存储->清除缓存->解锁->日志继续写入

这个过程处理起来需要注意

论坛徽章:
0
发表于 2010-01-07 09:45 |显示全部楼层
php做写入等待好像不是件轻松的事情   好的方法是临时存储(比如mysql)

但是查询如何解决呢!

存数据库是件恐怖的事情!  我没有遇到国100G以上的数据存储需求! 请指教

论坛徽章:
0
发表于 2010-01-07 10:06 |显示全部楼层
一天下来数据量有多少?应该存到数据库里面,数据量大但可以寻找数据库的方案来解决,不然怎么查询?

论坛徽章:
0
发表于 2010-01-07 10:45 |显示全部楼层
这个数据量还是比较大的! 但是日志这种数据是写入需求 大于查询需求! 就算一天10G日志信息  都写入到数据库  成本太高!

一台1T的服务器 也就存100天阿!  虽然日志可以定期清楚 但是为了这个查询次数有限的功能  添加几台服务器 不值得把!

论坛徽章:
0
发表于 2010-01-07 11:38 |显示全部楼层
你不是说一年才几十G,一天就几十G的话那就不是一般服务器的磁盘阵列之类的能解决了,上存储设备吧
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP