前言春节期间,无意中看到一篇文章,文章中讲到12306的业务复杂度远远比淘宝天猫这种电商网站要复杂。后来自己想想,也确实如此。所以,很想挑战一下12306这个系统的核心领域模型的设计。一般的电商网站,购买都是基于商品的概念,每个商品有一定量的库存,用户的购买行为是针对商品的。当用户发起购买行为时,系统只需要生成订单并对用户要购买的商品减库存即可。但是,12306就不是那么简单了,具体复杂在哪里,我
经过一周的调试目前软件已经比较稳定了.可以放给大家用了.使用本软件需要一些基本条件:1.需要一台Android手机2.Android手机必须已root3.Android手机必须是4.4或者4.4.2系统,其他版本系统一概不支持.如果你满足上面的条件,恭喜你可以用此软件.先说下本软件的原理,它和世面上所有的抢票软件都不同,世面上的抢票软件都是靠模拟http://www.12306.cn这个网站的HT
本人的工程实践项目是设计一个类似12306的网上售票系统,本文将分析该项目的同时对软件架构进行初步设计。项目信息题目基本要求参考12306站点进行售票系统建模设计,尽可能接近覆盖真实线上系统,实现的功能有但不限于:用户信息注册查询余票: 根据时间,车次,站点区间,座次(一等座,二等座,硬卧,硬座…)查询余票售票: 支持一次购买同一车次的多张车票(多人),支持订单30分钟内锁定,超时释放。支付接口可
原创:谈谈12306铁路客运售票系统的架构问题(二)作者:刘常军(2014-01-10)        就一个软件系统而言,业务需求是根本,是软件系统的基因和灵魂。        下面我们来简要的分析一下铁路客运售票系统和道路客运售票系统的主要业务需求。     &nb
 有一段时间没有使用Python了,前几天经朋友提起一篇关于用Python实现抢火车票的文章,百度了实现抢火车票的技术细节,网上却有不少资料,也不是新鲜的东西。在了解了一些技术手段,阅读了一些大神的博文后,也尝试实现了一下,代码写得粗糙,纯当娱乐,本文在Windows系统下完成。需要提到的是,抢票过程中的验证码部分只能手动完成。首先,我需要的工具和组件有:Chrome浏览器浏览器驱动Ch
转载 4月前
83阅读
任何设计都要分析问题需求,找到瓶颈。12306如果并发很少,那么就是一个很普通的购物商城的模型。单机器可能就可以解决了。但是由于12306平时访问量很大,而且部分时间段访问量会突然增大所以基本上讨论的问题就集中在以上两点。看到风云12年的一篇博客上有当时对此问题的分析。提出的方法如下:“ 我们设置几个网关服务器,用动态 DNS 的方式,把并发的订票请求分摊开。类比现实的话,就是把人分流到不同的购
验证码验证正确之后才进行登录验证。1. 登录验证登录验证接口:https://kyfw.12306.cn/passport/web/login              方式:POST   用户名、密码、appid, 其中 appid:otn 为固定参数返回信息示例: {"result_m
12306 抢票,极限并发带来的思考虽然现在大多数情况下都能订到票,但是放票瞬间即无票的场景,相信大家都深有体会。尤其是春节期间,大家不仅使用 12306,还会考虑“智行”和其他的抢票软件,全国上下几亿人在这段时间都在抢票。“12306 服务”承受着这个世界上任何秒杀系统都无法超越的 QPS,上百万的并发再正常不过了!笔者专门研究了一下“12306”的服务端架构,学习到了其系统设计上很多亮点,在这
cn12306的设计思路,不依赖数据库=======现在还有不少人在讨论12306的设计,在这里写一个简单的设计思路1. 网站不是为了解决高峰期票少人多的问题,争论里总讨论这个话题没意义2. 排队机制不能到处套用,拿网游的常规做法来处理web不是很合适,应该最大限度提升系统的响应速度3. 最好的方式是开票后10分钟内热门车次票就被订光了,抢到票的高高兴兴去付钱,没抢到的骂骂咧咧想其他途径,早死早超
转载 2月前
69阅读
关于12306网站和清华某院长的微博言论,我做了一个小回复,说这玩意不难,2个人2周,40台服务器可以搞定。 下面详细解释一下大概的思路。免费share一下,看看靠谱不靠谱。 别人看到的是流量,我先看结构,这里的数据结构是相当简单的,主要满足的需求是: 1.车次查询(最常见的是起点站,终点站查询 和车次直接输入查询)+余票显示 所谓的用户刷页面,绝大部分应该在这里。日均10亿pv(这个数字我
1. 项目简介  本课题参考12306站点进行售票系统建模设计,实现一个类12306售票系统,尽可能接近覆盖真实线上系统,实现的功能有但不限于:用户信息注册查询余票:根据时间,车次,站点区间,座次(一等座,二等座,硬卧,硬座等)查询余票售票:支持一次购买同一车次的多张车票(多人),支持订单30分钟内锁定,超时释放退票:支持一个用户帐户下的批量退票改签:同一用户一张车票只能改签一次2. 软件架构  
列车售票后台概念原型简介  我们小组的课题是实现12306后端,这是一个比较难的课题。但是又已经有了一个现成的软件可以参考,于是我们小组就通过研究12306前端来得到我们要实现的相关功能。   需要说明的是我们准备实现的12306后端与现在的12306有所不同。最大的区别就是我们并不去考虑这个系统与铁道部或者车站的交互。也就是说我们系统的参与者就只有后端和用户,当然前端作为用户的代理被认为是用户。
        经过前面三篇文章的铺垫和说明,如今终于可以具体分析要如何对12306.cn的架构进行优化了。        在这里我要强调,我不是该系统的架构师,没看过12306.cn的设计说明书,跟该系统的开发单位也无业务往来,对12306.cn铁路客运售票系统的架构问题,仅是本人出于对IT技术进
每到节假日期间,一二线城市返乡、外出游玩的人们几乎都面临着一个问题:抢火车票!虽然现在大多数情况下都能订到票,但是放票瞬间即无票的场景,相信大家都深有体会。尤其是春节期间,大家不仅使用12306,还会考虑“智行”和其他的抢票软件,全国上下几亿人在这段时间都在抢票。“12306服务”承受着这个世界上任何秒杀系统都无法超越的QPS,上百万的并发再正常不过了!笔者专门研究了一下“12306”的服务端架构
每到节假日期间,一二线城市返乡、外出游玩的人们几乎都面临着一个问题:抢火车票!12306 抢票,极限并发带来的思考虽然现在大多数情况下都能订到票,但是放票瞬间即无票的场景,相信大家都深有体会。尤其是春节期间,大家不仅使用 12306,还会考虑“智行”和其他的抢票软件,全国上下几亿人在这段时间都在抢票。“12306 服务”承受着这个世界上任何秒杀系统都无法超越的 QPS,上百万的并发再正常不过了!笔
在刚刚过去的淘宝双11大促活动中,淘宝的技术支撑受到了网民的追捧。而12306火车票购票系统,逢假日必瘫痪,真是天上地下。12306为何如此烂?12306火车票购票系统,逢假日必瘫痪,引发了强烈反响。国庆前后,“问诊12306”的时候,铁道系统的答复是,购票人数太多,数据量过大。但是,在前不久淘宝双11大促活动中,淘宝双十一总交易金额191亿,订单1亿零580万笔,其中无线支付近900万笔,支付宝
火车售票后台开发需求分析和概念模型1.前言本项目是立足于目前12306火车售票系统,对售票系统从数据库的设计、接口实现,到与前端交互等,逐步分析,尽可能优化,以便提供一个高性能、高并发的售票系统。2.项目简介题目基本要求参考12306站点进行售票系统建模设计,尽可能接近覆盖真实线上系统,实现的功能有但不限于: 用户信息注册查询余票: 根据时间,车次,站点区间,座次(一等座,二等座,硬卧,硬座…)查
feed系统和火车票售卖系统是2个高访问高并发情况下具体很大挑战的系统。 在低访问,低并发的情况下feed系统会变的非常简单,数据模型和业务功能都比较容易设计和实现,主要的挑战就剩如何面对层出不穷的敏感词和花样百出的广告语。相比之下,火车票售卖系统在低并发时也很有趣,假设我是12306的架构师,我会如何设计12306那。数据模型先将系统进行拆分,独立成用户,车票,下单3个系统,每个系统内部封闭成多
2018年,铁路12306网站全新改版。改版后的12306网站功能更加完善,增加了扫码登录功能让旅客的购票速度更方便快捷。自2010年1月30号运行起,经历了多次的升级和改版。今天我们来扒一扒,12306网站10年来的升级史。2018年新版12306上线一、12306之现实和理想的差距要论网站的访问量,12306绝对是名列前茅,而且没有专业的营销手段,让我们不得不服。也正因为如此,12306上线之
  • 1
  • 2
  • 3
  • 4
  • 5