PostgreSQL 与 12306 抢火车票的思考

  1. 云栖社区>
  2. 博客>
  3. 正文

PostgreSQL 与 12306 抢火车票的思考

德哥 2017-06-05 11:02:01 浏览1283
展开阅读全文

标签

PostgreSQL , 12306 , 春节 , 一票难求 , 门禁广告 , 数组 , 范围类型 , 抢购 , 排他约束 , 大盘分析 , 广告查询 , 火车票


背景

马上春节了, 火车票又到了销售旺季, 一票难求依旧。

抢火车票是很有意思的一个课题,对IT人的智商以及IT系统的健壮性,尤其是数据库的功能和性能都是一种挑战。

为什么这么说呢,我们一起来缕一缕。

售票系统的需求

铁路售票系统最基本的需求,查询余票、余票统计、购票、车次变化等。

下面分析一下这些需求。

查询余票

你如果要买从北京到上海的火车票,通常会查一下哪些车次还有余票。

过滤条件很多,比如

1. 源、目的、中转站

2. 车次类型

3. 出发时段

4. 到达时段

5. 席别

6. 过滤掉没有余票的车次

输出还要考虑到排序、分页。

pic

查询余票通常不是实时的、或者说不一定是准确的,有可能是分时统计的结

网友评论

登录后评论
0/500
评论
德哥
+ 关注