论坛首页 招聘求职论坛

面试题

浏览 25051 次
锁定老帖子 主题:面试题
该帖已经被评为隐藏帖
作者 正文
   发表时间:2009-09-08  
第一题没太大悬念,缓存->db,或者文件->db
第二题我是这么想的,
用日志表记录上一年用户主键和最大积分,然后在0点的时候多线程去一条条更新积分(现积分-日志表中对应积分),更新完后清日志表。
0 请登录后投票
   发表时间:2009-09-08  
pan_java 写道


更新的时候表同样会锁定


用innoDB,行锁
更新的话,可以找夜间空闲时间,分批进行,不会影响线上服务
0 请登录后投票
   发表时间:2009-09-08  
“不要用阿里的要求来支付垃圾公司的薪水”
楼主你的标题
第一哗众取宠
第二狗屁不通
0 请登录后投票
   发表时间:2009-09-08  
第三,脾气倒是挺大
0 请登录后投票
   发表时间:2009-09-08  
pan_java 写道
2、我的观点就是分批处理!并且可以用多线程做,加快处理速度,最好把这张表分离出来进行处理,然后用临时表进行替换!

1.临时表 只对当个连接用户有效.mysql heap 表可以对你个用户有效.
2. 分离出来进行处理,然后用临时表进行替换.
   复杂度很高,而且耗时(复制过程),耗内存(临时表占用)

谢谢,受教了!
0 请登录后投票
   发表时间:2009-09-08  
woodless 写道
1、可将访问结果保存到日志,比如使用apache,每天统计分析。
如果需要按小时统计,可将日志文件按小时分割。
实时的话,可采用高性能的bdb+cache方式

2、可建两个积分字段,比如score1、score2,分别对应奇、偶年,年份切换的时候,程序控制访问相应字段即可。清零只清没有用到的字段即可,在一年中任何时间都可进行。


感觉这个方案不错,很认同!
0 请登录后投票
   发表时间:2009-09-08  
box 写道
“不要用阿里的要求来支付垃圾公司的薪水”
楼主你的标题
第一哗众取宠
第二狗屁不通


不好意思啊!
0 请登录后投票
   发表时间:2009-09-08  
bluemusic 写道
第一题没太大悬念,缓存->db,或者文件->db
第二题我是这么想的,
用日志表记录上一年用户主键和最大积分,然后在0点的时候多线程去一条条更新积分(现积分-日志表中对应积分),更新完后清日志表。



2、应该把0点后的数据先缓存起来,等清零后再更新到数据库吧!
0 请登录后投票
   发表时间:2009-09-08  
box 写道
第三,脾气倒是挺大


呵呵,这不就是为了吸引你吗?
也为了不被隐藏贴吗?
0 请登录后投票
   发表时间:2009-09-08  
UUCALL,哈哈。我去过,蛮让人接受不了的
0 请登录后投票
论坛首页 招聘求职版

跳转论坛:
Global site tag (gtag.js) - Google Analytics