去支付宝面试,问了几个问题,请大家指教...

primer_of_java 2014-02-19 11:33:53
1. 淘宝网的秒杀 是如何确保数据的准确性和效率的.
希望小伙伴们能从前端架构,分布式的数据共享和安全等以及数据库多个层面来讨论下...一定要具体

2. 新浪微博的短URL是如何实现的.

3. 团购时,验证码如何实现.(包括6位的短信验证码和成功后的订单条码)

这些是面试的问题,欢迎大家讨论...
...全文
1956 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
-江沐风- 2014-02-27
  • 打赏
  • 举报
回复
引用 6 楼 primer_of_java 的回复:
[quote=引用 1 楼 miraclestar 的回复:] 1、服务端负载均衡,设置处理上限,比上限多的请求直接抛弃,防止集群down机;数据共享,用内存数据库,根据id,hash到不同的内存数据库,多个机器并发处理。 2、这个感觉用md5算一下就行了;参考:http://blog.csdn.net/xyz_lmn/article/details/8057270 3、验证码这个有什么好问的,生成个随机数发给用户就行了呗? 订单条码,用户id+订单号+日期时间+随机数?
呵呵,大方向大家其实都是知道的,其实就是看细节了. 1.我大概也是这么回答的,首先绝对不可能访问数据库,在web端过滤掉大部分的请求,然后留下一小部分的可能成功的请求去进行业务逻辑的处理.但是面试官直接问具体实现,感觉他就是要求细节了吧,所以还得要往细节里说. 2.这个我当时面试的时候猜想是这样的,但是没敢说,谢谢 3.验证码这个问题,我和你的回答完全是相同的.但是对于条码问题,他说,你这么做条码到后期会很长,比如在用户具体到电影院兑换的时候,会因太长而体验很差,这个方式不好,应该还有更好的实现方式,呵呵 [/quote]
primer_of_java 2014-02-26
  • 打赏
  • 举报
回复
引用 1 楼 miraclestar 的回复:
1、服务端负载均衡,设置处理上限,比上限多的请求直接抛弃,防止集群down机;数据共享,用内存数据库,根据id,hash到不同的内存数据库,多个机器并发处理。 2、这个感觉用md5算一下就行了;参考:http://blog.csdn.net/xyz_lmn/article/details/8057270 3、验证码这个有什么好问的,生成个随机数发给用户就行了呗? 订单条码,用户id+订单号+日期时间+随机数?
呵呵,大方向大家其实都是知道的,其实就是看细节了. 1.我大概也是这么回答的,首先绝对不可能访问数据库,在web端过滤掉大部分的请求,然后留下一小部分的可能成功的请求去进行业务逻辑的处理.但是面试官直接问具体实现,感觉他就是要求细节了吧,所以还得要往细节里说. 2.这个我当时面试的时候猜想是这样的,但是没敢说,谢谢 3.验证码这个问题,我和你的回答完全是相同的.但是对于条码问题,他说,你这么做条码到后期会很长,比如在用户具体到电影院兑换的时候,会因太长而体验很差,这个方式不好,应该还有更好的实现方式,呵呵
zclace 2014-02-26
  • 打赏
  • 举报
回复
秒杀需要加锁吧 并发危险
xiaoma941895466 2014-02-25
  • 打赏
  • 举报
回复
学习中...秒杀曾听人说很复杂,搞得不好,数据库都要蹦,不懂求指教
yunfeifan 2014-02-25
  • 打赏
  • 举报
回复
第一个问题,秒杀应该分两部分 一个是点击秒杀成功,第二步完成订单。 所以当用户点了秒杀后,可以由数据数量少一条,同时写入另外一个数据库增加一条记录,这时用户填写订单信息,点击订单完成,在第三个库(或者表)中增加一条订单记录,如果任意一步失败则 事务回滚 三个记录。 第二个问题,我也认为是那用户账号+时间做了hash,然后截取,如果查看数据库中已经存在,重新算,再截取。 第三个问题,应该没有这么简单吧,我理解和token一样 有一定时效性,可以根据用户的id+时间戳(例如到分)+一个用户的salt 的一个hash,截取几位。这样还可以再推算出来。 瞎猜的哈。
海兰 2014-02-21
  • 打赏
  • 举报
回复
sqtmtd 2014-02-20
  • 打赏
  • 举报
回复
同意楼上的分析。
miracleliu 2014-02-19
  • 打赏
  • 举报
回复
1、服务端负载均衡,设置处理上限,比上限多的请求直接抛弃,防止集群down机;数据共享,用内存数据库,根据id,hash到不同的内存数据库,多个机器并发处理。 2、这个感觉用md5算一下就行了;参考:http://blog.csdn.net/xyz_lmn/article/details/8057270 3、验证码这个有什么好问的,生成个随机数发给用户就行了呗? 订单条码,用户id+订单号+日期时间+随机数?

25,985

社区成员

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

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