【技术“瓶颈”】电信分公司-华讯面试题,探讨下解题思想

hoojo 2010-04-14 01:06:14
加精

一个月前在广州华讯公司(电信分公司)的一道面试题:
请问一个购物的BS平台,客户A和客户B“同时”看上了一件商品,商品的数量是10件。
客户A购买了这件商品7件,此时客户B的页面上还是显示“10”件商品。
请问用什么办法让客户B知道商品的数量已经发生了变化,只有3件???
要求:最好不要对数据库进行操作(如:客户B购买时查询数据库、在数据库中锁定当前数据),
但是可以谈谈解题的思想。
个人要求:如果有涉及到数据库方面的操作但解题方法很奇妙的也可以说说看。
各位牛人、大侠都发表下看法或思路!!!
...全文
13841 395 打赏 收藏 转发到动态 举报
写回复
用AI写文章
395 条回复
切换为时间正序
请发表友善的回复…
发表回复
sk090 2012-12-14
  • 打赏
  • 举报
回复
引用 100 楼 duanjianmin 的回复:
引用 60 楼 xingqiliudehuanghun 的回复:对于访问量较大的互联网程序用长连接做服务器推是很不靠谱的,为了这个屁大点的 功能,需要耗费大量的服务器资源,以为WEB无服务器能够管理的长连接个数是有限的 也就几百个。 对于这样的需求可以从两个方面来做,第一在现实页面用Ajax定期刷新。第二当 客户购买的时候输入购买数量,提交的时候检查库存是否够……
都是大牛 学习了
番茄炒鸡蛋 2012-11-22
  • 打赏
  • 举报
回复
我觉得hibernate二级缓存已经解决了这个问题。A买7件后把二级缓存里的值也改变。当B要点击购买时ajax发送请求,从二级缓存里取数量,动态更新数量。或设时钟定时更新数量。整个过程没有重新访问数据库,服务器压力也不大。hibernate二级缓存只是种思路,也可以用其他缓存。 ajax + 缓存
危险的大猫 2012-11-16
  • 打赏
  • 举报
回复
真心觉得大部分人没看懂题意, 和考官想考察的目的
c_______ 2012-10-23
  • 打赏
  • 举报
回复
我发现好多游戏客户端或者网站好像都没解决这个问题。。。。
wokeke 2011-09-02
  • 打赏
  • 举报
回复
关注“推”技术、flex、服务器缓存、AJAX
jokan210 2010-12-09
  • 打赏
  • 举报
回复
很好很强大
mengxiang013 2010-11-29
  • 打赏
  • 举报
回复
可以看看comet技术
满意 2010-08-23
  • 打赏
  • 举报
回复
在学.Net的时候,那里面是用Ajax和Cache处理的,可以实时更新,不过java就不知道了
guanyang3 2010-05-18
  • 打赏
  • 举报
回复
个人觉得自己很菜,不过觉得77楼说的有道理。。
既然B已经对数据库进行了操作。数据库值变了。。
A 去操作的时候给的是新值.。
qq2297634 2010-05-10
  • 打赏
  • 举报
回复
学习学习 长长见识
happiness1314 2010-05-10
  • 打赏
  • 举报
回复
我觉得47楼的说的有道理,很多不错的见解啊,学习了!
hoojo 2010-05-09
  • 打赏
  • 举报
回复
真沉重!
hoojo 2010-05-09
  • 打赏
  • 举报
回复
终于顺利结贴了,打分累啊!
naruto__ 2010-04-25
  • 打赏
  • 举报
回复
学习了!!!!!
curacfyh 2010-04-24
  • 打赏
  • 举报
回复
这种实时更新并且不差数据库的,不就一种吗:
建立长连接,用application存放商品信息。客户端一有变动,ajax发送变动的消息,服务端接收请求后,发送消息给保持着长连接的客户端(一些js脚本)。
在客户端,页面上有个隐藏的iframe,用于接收发送来的iframe。ajax回调函数中将返回的js脚本document.write到隐藏的iframe中。这样靠js代码来更改页面,可以保持随时更新。
说白了就是服务器推,缺点不少,服务器压力大。
取你猪头 2010-04-24
  • 打赏
  • 举报
回复
此贴必火!
lin_yongan 2010-04-24
  • 打赏
  • 举报
回复
学习...
sotom 2010-04-24
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 coolwzjcool 的回复:]

采用观察者模式,当值发生变化时,及时通知各个操作该数据的用户!
[/Quote]

或者 使用 flex 做,哈哈,直接就有相应的事件。
Mofen818 2010-04-24
  • 打赏
  • 举报
回复
这个问题的关键是服务器怎么主动向客户端发送命令。这个问题解决了,那就好办了。
ArayChou 2010-04-24
  • 打赏
  • 举报
回复
面试官根本就不想得到你的答案,他想得到你的表达能力,分析能力,xxx能力。

没有人会在电子商务网站上实现这个功能,我想大家都赞同我这个观点吧?
加载更多回复(371)

81,094

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧