12306为什么不从用户行为角度解决性能问题

我们都经历过12306购票的抓狂。我相信12306已经投入了海量的钱,已经使用的最好的服务器,也已经请了最好的架构师去帮助解决问题。但是最终结果你懂的。
我们为什么不换一个角度从用户的行为角度解决问题:我们登陆12306的目的是什么?我们能不能延时处理订单?
我们使用12306的目的就是能买到票回家,我们以前能花几天在电脑前为了区区一张票,我想也不会太关心那么几秒几分钟之后才知道能不能得到票。
我的想法就是:
1,我们的数据库有一个用于修改,其余只能读。相当于Active/Standby模式
2,我们根据只读服务器的数据给用户显示订票界面。
3,用户提交订单。不管有没有票,都成功。提示用户你可以去喝杯咖啡,我们会短信通知您下一步怎么做
4,后台开始处理所有订单,如果成功,发信要求客户你可以交钱了。否则说sorry. we are out of ticket

我们可以进一步优化:
1,用户可以一次给用户丰富的选择,比方说特快1定不上,我可以特快2,也可以慢车。只要不让我走回家就行。我也可以几张票不在一趟列车,我们可以分开走。。。
2,我们可以允许客户提交一个订单循环订票,比方这个订单如果失败,2个小时后系统会尝试再次提交,因为有些人没有按时付钱。
3,我们可以限制一个用户同时处理的订单个数。如果用户提交多个,我们可以说:你是票贩子吗?我们正在处理你的好几个订单

我们也可以提供一种选择,保留现有的实现,给那些有时间刷屏的同志。

 

有了这些,我们就不要傻乎乎的在电脑前刷屏了。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值