锁定老帖子 主题:如果让你设计铁道部购票网站,你怎么做
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2012-01-13
linliangyi2007 写道 mikewang 写道 不懂不要装懂! 电信计费系统要比一般的交易系统简单的多的多,甚至比一般CMS/MIS 系统都要简单。 原因如下: 1 电信计费系统算是一个无状态的系统(请求/回复无状态,数据之间无关联依赖) 2 电信计费系统几乎没有并发(并发20个以内,中国发达省份会多一下,但不会超过40) 3 数据都是串行化处理队列处理 4 业务处理过程极其简单(不要说什么批价,信控复杂! 那个叫繁琐,复杂真的算不上) 但一般的交易系统就不一样了 1 都是状态数据,服务器必须跟踪客户端的状态,服务端压力巨大 2 并发处理要求高,而且都是online 在线处理 3 交易数据内部都有关联,而且有相互依赖 那按你的意思是,这个售票系统是因为复杂,所以出现收了钱,不出票??还是说做到这点很不容易,很完美,不用改进了,或者没有改进空间了?? 高可靠性系统在最核心部分大都是串行化处理的,正因为这样,我们才提出了异步任务队列,或者排队系统的设计。 按照我上面的3部设计原则,售票系统的核心根本就不存在什么客户端状态跟踪,或者太多复杂的业务依赖,这些东西应该在第二部分系统中分离,核心部分就是高效的串行化系统,最终确认客户下单,收钱,出票。 你太想当然了。 队列系统处理的前提就是数据孤立不要有关联, 例如计费系统, 账户信息都是孤立的, 我不可能需要操作你的账户,而且操作也是有严格顺序的,但是售票系统可不是这样,对票的操作是无序的,而且相互之间是有关联的,你定票的时候,票还有, 但你出票的时候票可能已经没有了! 我估计那个收了钱,不出票的原因可能就是采用了队列技术, a,b2个操作队列同时对票处理,但没做串行化。但仔细想想,这里的串行化也是不现实的,如果采用串行化,那么整个系统的响应速度会更慢。 改进是需要的, 不过首先需要做好准备工作,例如梳理购票流程,规划合适的后端购票平台等等,另外项目运作上也要做出调整,不要在春运中实验这个系统! 毕竟这个系统算是世界上用户数最大,最集中的系统之一了。通过这个系统买到票的人还是有的,在没有搞清楚问题之前,我不会提出建议和意见. 向你这样的异想天开的比较和抱怨解决不了任何问题!同时你也不能从别人的错误中学习到任何知识! |
|
返回顶楼 | |
发表时间:2012-01-13
mikewang 写道 linliangyi2007 写道 mikewang 写道 不懂不要装懂! 电信计费系统要比一般的交易系统简单的多的多,甚至比一般CMS/MIS 系统都要简单。 原因如下: 1 电信计费系统算是一个无状态的系统(请求/回复无状态,数据之间无关联依赖) 2 电信计费系统几乎没有并发(并发20个以内,中国发达省份会多一下,但不会超过40) 3 数据都是串行化处理队列处理 4 业务处理过程极其简单(不要说什么批价,信控复杂! 那个叫繁琐,复杂真的算不上) 但一般的交易系统就不一样了 1 都是状态数据,服务器必须跟踪客户端的状态,服务端压力巨大 2 并发处理要求高,而且都是online 在线处理 3 交易数据内部都有关联,而且有相互依赖 那按你的意思是,这个售票系统是因为复杂,所以出现收了钱,不出票??还是说做到这点很不容易,很完美,不用改进了,或者没有改进空间了?? 高可靠性系统在最核心部分大都是串行化处理的,正因为这样,我们才提出了异步任务队列,或者排队系统的设计。 按照我上面的3部设计原则,售票系统的核心根本就不存在什么客户端状态跟踪,或者太多复杂的业务依赖,这些东西应该在第二部分系统中分离,核心部分就是高效的串行化系统,最终确认客户下单,收钱,出票。 你太想当然了。 队列系统处理的前提就是数据孤立不要有关联, 例如计费系统, 账户信息都是孤立的, 我不可能需要操作你的账户,而且操作也是有严格顺序的,但是售票系统可不是这样,对票的操作是无序的,而且相互之间是有关联的,你定票的时候,票还有, 但你出票的时候票可能已经没有了! 我估计那个收了钱,不出票的原因可能就是采用了队列技术, a,b2个操作队列同时对票处理,但没做串行化。但仔细想想,这里的串行化也是不现实的,如果采用串行化,那么整个系统的响应速度会更慢。 改进是需要的, 不过首先需要做好准备工作,例如梳理购票流程,规划合适的后端购票平台等等,另外项目运作上也要做出调整,不要在春运中实验这个系统! 毕竟这个系统算是世界上用户数最大,最集中的系统之一了。通过这个系统买到票的人还是有的,在没有搞清楚问题之前,我不会提出建议和意见. 向你这样的异想天开的比较和抱怨解决不了任何问题!同时你也不能从别人的错误中学习到任何知识! 怎么说呢,我不是想当然,我之前做过一个证券开户系统,其开户依赖逻辑各种关联的复杂,需要对用户的A股账号,B股账号,资金账号,影像资料等等,多达7-8分布式系统的关联,每个请求还要等对方系统确认后,才可向下执行。 其中关配置业务规则就可以搞晕好一阵子,但即便这样,依然可以很好的使用队列机制解决。 你会说这个实时性不高,但是这个实例说明了队列能够实现业务逻辑的高复杂性和依赖性。你说我想当然,那你对我的经验和能力就是客观评价了?! 我只想明确一点,这个订票系统会出现收钱不出票这样的低级问题,就是个根本不符合上线标准的产品,这个就好比取款机扣了你账号的钱,再告诉你机器内没钞票;又好比你在证券系统中交易,钱付了,股票没入账,这种系统敢拿来上线!!! 【毕竟这个系统算是世界上用户数最大,最集中的系统之一了。通过这个系统买到票的人还是有的,在没有搞清楚问题之前,我不会提出建议和意见.】 赤裸裸洗白啊,除了系统开发人员,外部人员当然永远搞不清楚具体的系统实现是怎样的,大家只是从自己的经验和解决问题的角度来说明,这样的系统要如何设计! |
|
返回顶楼 | |
发表时间:2012-01-13
最后修改:2012-01-13
支持楼上,总之现在是事务和性能都没达到预期的效果,需要改进啊~~~
不过12306一上线就这么多流量,让多少业内人士羡慕、嫉妒、恨那!!! |
|
返回顶楼 | |
发表时间:2012-01-13
有意义吗?如果觉得很有本事,就自己开发个Apache,Nginx,Mysql 也拿出来开源,给我们菜鸟用用
|
|
返回顶楼 | |
发表时间:2012-01-13
linliangyi2007 写道 怎么说呢,我不是想当然,我之前做过一个证券开户系统,其开户依赖逻辑各种关联的复杂,需要对用户的A股账号,B股账号,资金账号,影像资料等等,多达7-8分布式系统的关联,每个请求还要等对方系统确认后,才可向下执行。 其中关配置业务规则就可以搞晕好一阵子,但即便这样,依然可以很好的使用队列机制解决。 你会说这个实时性不高,但是这个实例说明了队列能够实现业务逻辑的高复杂性和依赖性。你说我想当然,那你对我的经验和能力就是客观评价了?! 我只想明确一点,这个订票系统会出现收钱不出票这样的低级问题,就是个根本不符合上线标准的产品,这个就好比取款机扣了你账号的钱,再告诉你机器内没钞票;又好比你在证券系统中交易,钱付了,股票没入账,这种系统敢拿来上线!!! 【毕竟这个系统算是世界上用户数最大,最集中的系统之一了。通过这个系统买到票的人还是有的,在没有搞清楚问题之前,我不会提出建议和意见.】 赤裸裸洗白啊,除了系统开发人员,外部人员当然永远搞不清楚具体的系统实现是怎样的,大家只是从自己的经验和解决问题的角度来说明,这样的系统要如何设计! 这个不是洗白,我说的是事实,另外铁道部也是第一次搞这么个系统。系统确实有问题,需要改进。 |
|
返回顶楼 | |
发表时间:2012-01-13
不知道各位有没有认真思考过云风的方案,我马后炮提三个问题:
1. 网上订票的“实名制”对技术方案意味着什么 2. 12306、实体售票点和核心票务系统之间的接口和各自职责是什么 3. 偏技术一点, actor模型对业务建模意味着什么 围绕这三点,我想对于这个网上订票网站如何设计的讨论就不会跑偏。大家的讨论热情很高啊 |
|
返回顶楼 | |
发表时间:2012-01-13
linliangyi2007 写道 zmcsut 写道 一群装高手的家伙,继续蛊惑在卖1分钟就缺货的购物网站上加排队系统吧.
淘宝真该请你们去加个排队系统,否则淘宝人士全成了你们嘴里的... 大家来围观了,这位高手意思是,现在的订票系统已经最好了,没有改进的可能了,他们做的系统是最牛的!! 来,我们来膜拜! 你是红卫兵出生吧,扣帽子的恶习还在?不当官真委屈了你。 你开篇说3点解决方案,还不让人反驳?仔细想想你说的3点有没有建设意义吧。还排队,我呸,最恨排队了。 不从用户角度考虑,讨论个毛技术。 拜托你不要给已经够垃圾的网站上添垃圾了。真加上排队还让不让人活,难不成在电脑前排上好几天队,就为买一张票。 |
|
返回顶楼 | |
发表时间:2012-01-13
zmcsut 写道 linliangyi2007 写道 zmcsut 写道 一群装高手的家伙,继续蛊惑在卖1分钟就缺货的购物网站上加排队系统吧.
淘宝真该请你们去加个排队系统,否则淘宝人士全成了你们嘴里的... 大家来围观了,这位高手意思是,现在的订票系统已经最好了,没有改进的可能了,他们做的系统是最牛的!! 来,我们来膜拜! 你是红卫兵出生吧,扣帽子的恶习还在?不当官真委屈了你。 你开篇说3点解决方案,还不让人反驳?仔细想想你说的3点有没有建设意义吧。还排队,我呸,最恨排队了。 不从用户角度考虑,讨论个毛技术。 拜托你不要给已经够垃圾的网站上添垃圾了。真加上排队还让不让人活,难不成在电脑前排上好几天队,就为买一张票。 狗急了,跳墙了,除了无脑的谩骂,你能给出啥有意义的建设性方案么?排队是一种常用的大并发量缓冲策略,居然被你说成是垃圾,很想知道你在哪里高就,做些什么,这种水平,脾气倒挺大! |
|
返回顶楼 | |
发表时间:2012-01-14
linliangyi2007 写道 zmcsut 写道 linliangyi2007 写道 zmcsut 写道 一群装高手的家伙,继续蛊惑在卖1分钟就缺货的购物网站上加排队系统吧.
淘宝真该请你们去加个排队系统,否则淘宝人士全成了你们嘴里的... 大家来围观了,这位高手意思是,现在的订票系统已经最好了,没有改进的可能了,他们做的系统是最牛的!! 来,我们来膜拜! 你是红卫兵出生吧,扣帽子的恶习还在?不当官真委屈了你。 你开篇说3点解决方案,还不让人反驳?仔细想想你说的3点有没有建设意义吧。还排队,我呸,最恨排队了。 不从用户角度考虑,讨论个毛技术。 拜托你不要给已经够垃圾的网站上添垃圾了。真加上排队还让不让人活,难不成在电脑前排上好几天队,就为买一张票。 狗急了,跳墙了,除了无脑的谩骂,你能给出啥有意义的建设性方案么?排队是一种常用的大并发量缓冲策略,居然被你说成是垃圾,很想知道你在哪里高就,做些什么,这种水平,脾气倒挺大! 帽子一顶顶的,很好奇你这人怎么能做技术? 你真能认真和人讨论技术?真能用心体会用户需求? 排队是一种常用的大并发量缓冲策略.没有那种东西是万能的.限制人数不一定要排队.现在明显是卡在提交订单那步,明显是设计问题.你却咬着不是重点的登录不放.按你的帽子论,是不是该说你在无间? 一个技术论坛,搞得像天涯一样,帽子满天飞. |
|
返回顶楼 | |
发表时间:2012-01-14
iteye已经变成CSDN了。javaeye已经消失了。
|
|
返回顶楼 | |