针对12306网站的现状,做出如下猜想:
1.根据实际情况抽象可以得到一个结论,一个人在某一个时段永远只能乘坐某个车次的车,因此首先将票池根据车次进行划分,和该车次相关的所有业务处理都是完全独立的,这样做可以解决的问题是:
一,可以屏蔽部分黄牛刷票和部分旅客下单错误又重新退单抢票的无效业务流,即可以在每次下单前,检测账号中已经存在的成功的订单信息,如果出现车次、时间重叠现象的,则予以驳回,不允许其下单,
二,由于每个车次的处理类似于一台虚拟主机,那么在网络资源,硬件资源等方面也可以实现隔离,这样,即可以避免“一个老鼠坏一锅汤”的情况,同样对应各种突发情况,攻击,恶意刷票的拦截以及资源的动态调整都提供了方便,
同时可以在此基础上实现分库,CDN,等一些常规的加速减压分流技术。
2.针对黄牛的屯票,可以压缩其利益空间,当其没有利益可图时,自然就不刷票了,措施:
一、一定程度的缩短订单保留时间,减少黄牛出票机会;
二、针对退票回购现象,阶梯收取手续费,比如某一身份证信息第二次退票收取的手续费是第一次的两倍。
3.根据省份启用三级域名,比如bj.12306.cn,这样可以解决一些由于目前只有一个域名而带来的部分架构复杂度,同时可以提供更多的访问入口。
http://blog.45net.cn/2014/02/12/12306%E7%BD%91%E7%AB%99%E8%AE%BE%E8%AE%A1%E7%8C%9C%E6%83%B3/