设计12306售票系统的数据库
订票系统分解,得到位池、余票池、订票池、取票池四个票务处理系统,以及独立的前台伺服系统、支付系统和通知系统,其中的精华就是位池、余票池系统。售票窗和电话取票内部原理与网上订票一样,只是多了一个人工客服或电话客服。将订票系统分解,目的是使订票事件异步处理,独立系统处理专业事件,实现简单,效率更高。子系统对应的数据结构也更符合实际需求,数据处理更快。每个子系统的处理任务不同,对服务器的要求也不同,从而实现服务器的灵活配置。分解系统的依据是使票务信息数据库结构更简单、查询链更短、“静态化”。如此以来,我们查询票务信息时面对的仿佛就是一张简单的表格,根据我们提供的列车车次或者出发站/目的站直接就可以定位到相应列车的余票信息。而且这个余票信息还是实时更新的——后台驱动在默默地为您服务。
位池系统
位池系统是余票查询与订票的基础。位池数据库记录所有列车每一个票位在沿途各站点的使用情况
{ /** 位池文档结构,订票系统的根基,发生订票时,向余票池请求减去或增加相应票位,向待支付票池请求生成订单。
一个文档对应列车中的一个位,如座位或者卧铺位