`
jwinder
  • 浏览: 27238 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

面试题

    博客分类:
  • JAVA
 
阅读更多
下面二题综合题请大虾给指教,本人对这方面只是了解而没有应用过,所以回答的比较肤浅,不知道面试的人会是什么感想。

1、现在有一个广告系统,每天广告系统的访问量很大,每当用户点击一个广告时,需要记录广告的访问时间和每个IP每日访问次数,请给出系统优化方案?说得越多越好。 

2、现在有一张3000万用户数据的积分表,每年的1月1日0时需要对用户积分进行清零操作,而积分数据时时更新的,在不影响当然用户系统使用情况下,进行清零操作,请问你将如何设计系统? 
分享到:
评论
69 楼 jindw 2010-07-31  
1. 你的回答说明你不懂互联网。
2. 你的行为有违工程师的职业道德。

如果第一条还能被一些小公司接受,毕竟不懂得还可以培养。
第二条,我不说什么了。

好运吧。
68 楼 jinliangonline 2010-07-31  
就第二道题简单说说,临时表的做法我感觉还是有问题存在的。
更新3000W条数据的时间并不短,这段时间内,如果有部分用户的积分发生变化,那该用户就受到损失了。

我还是蛮同意前面几个朋友提到的 用户自己触发才进行积分清零的做法的。
无非是多一个last_update_dt字段。
用户触发操作的时候,判断下最后更新时间是否是今年,如果是的话,就累加积分,如果否就进行清零。
前面有朋友说 如果查询今年的积分情况怎么办(部分用户大半年都不触发积分操作的,积分保留的还是去年的积分)
其实把查询的sql稍加修改就解决了 where last_update_dt>今年。

其实,不管是临时表,还是用户主动触发,都还是看实际情况进行处理比较好。
比如,张贴个告示:我们系统1月1号的零点至八点进行定期维护,那就写个存储过程慢慢一条条的跑就好了。
67 楼 chl914 2010-07-30  
这两个问题工作中都曾经遇到过,哈哈
66 楼 石建武 2009-09-21  
呵呵。我也做过这样的面试题。
当时想到的也就是:
1.”缓存”,开辟单独线程,定时刷新到数据库。
2.临时表

感觉自己说的答案,人家很不满意。
65 楼 lonelybug 2009-09-19  
bluemusic 写道
lonelybug 写道
你换奖品的时候,要到柜台,当柜台访问你的个人信息的时候,就会触发清零实践。

这种Event Driven的设计方法是比较适合这种情况的。

那有个疑问哦,如果网上或者电话查询的时候,在查到具体积分前,先清0咯。那触发的方式比较多吧。暂不考虑频繁触发的问题。


我都不知道你有没有设计过软件!?

高内聚设计懂么!?那位老兄愿意给他讲讲的,好心帮个忙,告诉他检测触发事件应该放到那个层。
64 楼 jwinder 2009-09-18  
canyon 写道
我是相当理解那个管面试的项目经理的,好多技术人员不理解客户的需求就是上帝这个道理,碰到点难于满足的需求就撂挑子不干了,这样的员工在任何地方都不行的,做软件项目会得罪客户,做网站开发会得罪项目经理。其实很多情况下,如果你能力够,一时难于满足的需求反而是一个挑战。所以我们看到了,真正的牛人是从来不抱怨客户和需求的。某种情况下先反省反省自己的能力也是一个选项。当然,如果是领导啥都不懂,哪还是换个地方好。不过,到底是你的领导的问题还是你的问题呢?呵呵。



明白
63 楼 zapldy 2009-09-15  
楼主是不是去了杭州一家做UUCall的悠恒网络公司啊?我去笔试面试过,在没有谈薪水之前他们好像对我很满意,最后谈薪水的时候我还没有说我预期薪水,只说了以前的薪水他们就直接吓着了,最后再也没有给我打电话!
62 楼 bluemusic 2009-09-13  
lonelybug 写道
你换奖品的时候,要到柜台,当柜台访问你的个人信息的时候,就会触发清零实践。

这种Event Driven的设计方法是比较适合这种情况的。

那有个疑问哦,如果网上或者电话查询的时候,在查到具体积分前,先清0咯。那触发的方式比较多吧。暂不考虑频繁触发的问题。
61 楼 lonelybug 2009-09-13  
你换奖品的时候,要到柜台,当柜台访问你的个人信息的时候,就会触发清零实践。

这种Event Driven的设计方法是比较适合这种情况的。
60 楼 bluemusic 2009-09-13  
lonelybug 写道
第一个题,使用messaging bus方式,或者使用mapReduce来进行。

第二题,当来到新的一年之后,每个用户记录每年第一次被访问的时候,触发清零操作。

对于第二题,如果第二年不买东西即不改变积分,那原积分不变,这时可以用积分兑换奖品了。。。。
59 楼 lonelybug 2009-09-12  
第一个题,使用messaging bus方式,或者使用mapReduce来进行。

第二题,当来到新的一年之后,每个用户记录每年第一次被访问的时候,触发清零操作。
58 楼 markdengcn 2009-09-11  
1、现在有一个广告系统,每天广告系统的访问量很大,每当用户点击一个广告时,需要记录广告的访问时间和每个IP每日访问次数,请给出系统优化方案?说得越多越好。  
答:
两种方案:
    1)采用缓存,每次访问的记录先记录到内存缓存中,定期flush到数据库中。
    2)采用Apache服务器日志来记录就行。每次点击广告时,发送一个请求到Apache服务器,apache自动会记录日志,然后定时去分析日志。当然也可以采用nginx来记录,性能会更高。
    另外,如果访问量再大时,就需要进行做负载均衡,日志处理就需要进行合并处理。
    目前大网站都是这样来处理访问日志的。



2、现在有一张3000万用户数据的积分表,每年的1月1日0时需要对用户积分进行清零操作,而积分数据时时更新的,在不影响当然用户系统使用情况下,进行清零操作,请问你将如何设计系统?
答:由于更新时会导致锁记录,3000w会是一个很长的时间。
    如果需要做到1月1日0时实时切换,可以让记录分为a,b两个字段,一般情况下用a字段,1月1日0时前把b清零,0时切换到b字段。每年一次自动切换。
    如果需要做到实时切换,则可以减少每次更新粒度,比如每次更新1W条,分3千次执行完毕。
57 楼 canyon 2009-09-11  
我是相当理解那个管面试的项目经理的,好多技术人员不理解客户的需求就是上帝这个道理,碰到点难于满足的需求就撂挑子不干了,这样的员工在任何地方都不行的,做软件项目会得罪客户,做网站开发会得罪项目经理。其实很多情况下,如果你能力够,一时难于满足的需求反而是一个挑战。所以我们看到了,真正的牛人是从来不抱怨客户和需求的。某种情况下先反省反省自己的能力也是一个选项。当然,如果是领导啥都不懂,哪还是换个地方好。不过,到底是你的领导的问题还是你的问题呢?呵呵。
56 楼 hotjava 2009-09-10  
1。不加索引。
2。异步处理
55 楼 xiebiao110 2009-09-10  
cheaper 写道
woodless 写道
1、可将访问结果保存到日志,比如使用apache,每天统计分析。
如果需要按小时统计,可将日志文件按小时分割。
实时的话,可采用高性能的bdb+cache方式
我遇到过,不过是很简单的做法,也是对日志文件分析,首先要明白几点,这是一个广告系统,当然数据量很大,所以你的web服务器当然不只一个,如果将及时的广告请求交给后台应用处理的话,后台的app server也会有很多来处理,这种方式必须保证后台app server的高并发,另外一种就是,不直接交给后台app server及时处理,将前台的web服务器的日志按大小,或按时间切割成小文件,交给后台任务分析,当然日志文件,你可以定义好日志格式,我用的nginx,可以按一定规则输出日志,如果实在量很大,直接上hadoop


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

这个思路与众不同, 有特点. 学习了.


这个的做法,相对简单了,大家都提到临时表,这确实是一个方案,系统正对临界时间将积分写入临时表,页面展示也读取临时表,然后用另外的任务清理积分,清理完了以后,将临时表的数据写回来
上面有人好像说用缓存,这两个应用好像意义不大,缓存只针对频繁读取的数据才比较有意义,积分不能因为缓存而丢失
54 楼 yuyee 2009-09-10  
想想,那个人好像是说,存数据库连接耗性能
53 楼 yuyee 2009-09-10  
icefishc 写道
yuyee 写道

你写入数据库我还要读出来统计呢,文件还需要IO操作,感觉还是他的方法,直接放队列里,多线程操作统计

第一次听到放到数据库的东西还要拿出来统计.

呃,吓人了,应该是数据库连接耗性能
52 楼 icefishc 2009-09-10  
yuyee 写道

你写入数据库我还要读出来统计呢,文件还需要IO操作,感觉还是他的方法,直接放队列里,多线程操作统计

第一次听到放到数据库的东西还要拿出来统计.
51 楼 yuyee 2009-09-10  
UUCALL的项目经理很年轻
50 楼 robertpi 2009-09-10  
那个项目经理干脆问你怎么开公司得了,会这玩意还需要打工?

相关推荐

    10万字总结java面试题和答案(八股文之一)Java面试题指南

    JavaOOP面试题 Java集合/泛型面试题 Java异常面试题 Java中的IO与NIO面试题 Java反射面试题 Java序列化面试题 Java注解面试题 多线程&并发面试题 JVM面试题 Mysql面试题 Redis面试题 Memcached面试题 MongoDB面试题 ...

    牛客大数据面试题集锦+答案,共523道,46W+字。大厂必备

    大数据面试题V3.0完成了。共523道题,679页,46w+字,来源于牛客870+篇面经。 主要分为以下几部分: Hadoop面试题:100道 Zookeeper面试题:21道 Hive面试题:47道 Flume面试题:11道 Kafka面试题:59到 HBase面试题...

    云计算面试题之ELK面试题,运维工程师必备云计算面试题之ELK面试题,运维工程师必备云计算面试题之ELK面试题,运维工程师必备云

    云计算面试题之ELK面试题,运维工程师必备云计算面试题之ELK面试题,运维工程师必备云计算面试题之ELK面试题,运维工程师必备云计算面试题之ELK面试题,运维工程师必备云计算面试题之ELK面试题,运维工程师必备...

    个人面试题总结(java,数据库,前端).zip

    文件中包含了本人最近在网上总结的面试题,有java面试题,jq面试题,jsp、servlet、ajax面试题,mysql面试题,oracle面试题,redis教案,也有最近时间总结的公司面试题,涉及的层面虽然不是很多,但是应对面试 应该...

    2023最新JAVA面试题集

    2023年最新版--Java+最常见的+200++面试题汇总+答案总结汇总 阿里百度美团面试题合集 大数据面试题 100道 多线程面试59题(含答案) 最新JAVA面试题总结之基础/框架/数据库/JavaWeb/Redis BIO,NIO,AIO,Netty面试题 ...

    java面试题,J2EE面试题 笔试题

    最全的j2EE面试题,题量大、经典,是我面试的整理试题 1、java笔试题大集合 2、各个公司面试题 3、J2EE初学者面试题 4、J2EE面试题(打码查错题) 5、java_华为笔试题 6、java常见面试题 7、java程序员面试宝典 8、...

    (完整版)运维面试题(含答案).pdf

    (完整版)运维面试题(含答案).pdf(完整版)运维面试题(含答案).pdf(完整版)运维面试题(含答案).pdf(完整版)运维面试题(含答案).pdf(完整版)运维面试题(含答案).pdf(完整版)运维面试题(含答案).pdf(完整版)运维面试题...

    2020年前端面试真题(阿里、网易、滴滴等)文件为百度网盘链接永久有效

    现在五块钱的付出,将来收获的可能是一份心仪的offer,干货满满,建议下载。...友情提示:本套面试题包括面试题900题+公司实战面试题400问,面试题已经整理好答案,公司题由于新收录没有答案,但非常有参考价值。

    【BAT必备】zookeeper面试题

    【BAT必备】zookeeper面试题【BAT必备】zookeeper面试题【BAT必备】zookeeper面试题【BAT必备】zookeeper面试题【BAT必备】zookeeper面试题【BAT必备】zookeeper面试题【BAT必备】zookeeper面试题【BAT必备】...

    Python面试题及答案共70道.docx

    Python面试题及答案共70道Python面试题及答案共70道Python面试题及答案共70道Python面试题及答案共70道Python面试题及答案共70道Python面试题及答案共70道Python面试题及答案共70道Python面试题及答案共70道Python...

    最新Java面试题视频网盘,Java面试题84集、java面试专属及面试必问课程

    面试题包含了不同技术层面的面试问题,同时也能对一些没有面试开发经验的小白给予不可估量的包装, 让你的薪水绝对翻倍, 本人亲试有效.Java面试题84集、java面试专属及面试必问课程,所有的面试题有视屏讲解, 解答方案....

    超全的嵌入式工程师笔试面试题汇总.zip

    超全的嵌入式工程师笔试面试题汇总 单片机嵌入式应聘测试题(含答案).pdf 经典嵌入式面试题.pdf 嵌入式工程师笔试题带答案.pdf 嵌入式工程师经典面试题.pdf 嵌入式软件工程师笔试集锦.pdf 嵌入式软件工程师笔试题__...

    【BAT必备】dubbo面试题

    【BAT必备】dubbo面试题【BAT必备】dubbo面试题【BAT必备】dubbo面试题【BAT必备】dubbo面试题【BAT必备】dubbo面试题【BAT必备】dubbo面试题【BAT必备】dubbo面试题【BAT必备】dubbo面试题【BAT必备】dubbo面试题...

    H5前端面试大全-包含大厂面试题_25个md文件分类面试题.rar

    前端笔试面试题部分 试题链接 原题概述 标签分类 1.md CSS部分 CSS 2.md HTML部分 HTML 3.md FEX 面试题 General 4.md 前端面试常见问题 General 5.md 前端面试HTML 相关问题 HTML 6.md 前端面试CSS 相关问题...

    2024年tensorflow面试题必问.zip

    内容概要:本面试题涵盖了各种类型的技术面试题,包括编程语言、算法、数据结构、操作系统、计算机网络、数据库等多个方面。这些面试题都是经过精心筛选和整理的,涵盖了常见的面试题型和知识点,能够帮助求职者全面...

    ERP工程师面试题ERP工程师面试题

    ERP工程师面试题ERP工程师面试题ERP工程师面试题ERP工程师面试题

    嵌入式C语言面试题汇总(超经典).pdf

    我们在找嵌入式方面的工作时,让我们头疼的恐怕就是面试题了,因为我们摸不到企业的命题规律,也不知道该怎样去准备,今天将各大企业的面试题进行汇总,分享给大家,希望可以帮到各位小伙伴。加油哦!

    最全的IT公司面试题集 CHM版的

    Java面试题,J2EE面试题,.net面试题,PHP面试题,数据库面试题,英语面试,外企面试,软件测试面试题,Python面试题,Oracle面试题,MySql面试题,Web开发面试题,Unix面试题,程序员面试,网络技术面试题,网络安全面试题,Linux...

    java高级软件工程师面试题大全及答案 含一些公司面试题

    java高级软件工程师面试题大全及答,一些公司的面试题,对于正在找工作应对面试的朋友或许有点帮助。java高级软件工程师面试题大全及答,一些公司的面试题,对于正在找工作应对面试的朋友或许有点帮助

Global site tag (gtag.js) - Google Analytics