五千年(敝帚自珍)

主题:【原创】好吧,给一个铁道部订票系统的正确答案 -- 布老虎

共:💬185 🌺732 🌵9
全看树展主题 · 分页首页 上页
/ 13
下页 末页
家园 还忘记车上是可以补票的了
家园 我实在没有时间debug你的thinking proce

可以看出来你根本看不懂我老的雄文,完全不理解具体的设计思路,也不理解这里面的关键所在,不明白这里面为什么会有挑战性,更不明白为什么铁道部的网站会crash。

你最后居然哆哆嗦嗦拿出一本Postgresql来建议大家好好研究,我靠,开了眼了,你这大数据的处理方法(如果还能叫方法)居然不是分布式处理,你让铁道部用postgresql,接着买几百个核的服务器??难怪2千万美刀打不住。你这预算,估计得宰上亿美刀。

你把google的那些mapreduce/spanner的paper好好读明白了再来这里讨论。从你的帖子看,你不懂分布式数据处理。

家园 铁路有自己的软件研究院, 确实不信任纯软件人员

而且铁路的售票系统如果在黄金周或者春运出问题就是政治问题, 有人要负责任的。

家园 要用分布式系统处理的巨大流量,你居然能整出一单机版来

也算人才啊。

难怪我看半天总觉得不对劲。你对铁道部,就这阶级感情?

家园 2000千万报价是少了点,奥巴马care的网站都近5个亿

的花销,现在上线了人一多就死翘翘,这两天全国开骂呢。 healthcare.org

家园 嘿嘿

送花 关闭

送花成功。恭喜:你意外获得 4 铢钱。1通宝=16铢

作者,声望:1;铢钱:0。你,乐善:1;铢钱:3。本帖花:1

家园 送花成功。感谢:作者获得通宝一枚
家园 把数据库事务,以及acid吹的太离谱了。

互联网并不是不用事务,所有交易相关的都少不了的。

从事务的角度否定完全采用nosql有一点道理。

另外这些如银行用自己的队伍开发更多是业务知识积累,这只能说不同行业的软件开发需要不同行业的业务知识,外包若没有充足的业务知识累积可能造成灾难。

关键还是具体问题具体分析。

家园 【商榷】不知道他们有没有用分表这样的很普遍的方法

"不同的事务锁定不同的数据行"做不到,但将票按线路分表,每个表一个事务,这样对“写”操作应该可以并行不少了。更进一步的话,由于用户每次预订操作都是针对一个日期的一条线路来的,按日期和线路两者进行分表,这样并行化也可以更进一步了。到这样的粒度的话,并发量应该就能降一个数量级了。假设高峰时每秒有1000万人同时订票,平均分布的线路有100条,订票时间分布在5天,那并发量也就是2W,貌似大部分订票操作是可以做到秒响应的。

我没试过春节高峰时订票,不知道高峰时到底响应怎么样,不过我怀疑铁路系统已经是这么做或是用类似的办法了。

家园 麻烦的应该是查验身份证

这至少会增加一倍的时间,他们大概是估计不足了。

家园 可能这哥们根本就是个新手

我是看了这句话,无话可说了。这哥们尼玛就根本没有干过CS啊。。。我不知道这十多年来他开了啥源。

这哥们说:

“事实上,根据我在开源世界十多年的经验,开源产品虽然创意足够多,但真正能够保证质量,懂得业务的产品几乎没有。”

任何干过码工的直立行走的人,都不会说这话。你这每天的开发应用居然没有用到开源项目?

这哥们完全不知道开源是干啥的,也不知道开源和业务逻辑之间的关系。他以为开源,是开业务逻辑的源。搞不好就一干外包的,做业务逻辑堆代码的。Spring开源了啥业务逻辑,说给大家听听?尼玛

那些说话云山雾罩吞吞吐吐神神秘秘的骗子到处都有,差别就在国内把很多事情看得很神秘,所以相信的人很多。国外很多事情很多高手亲自做过,所以很难骗到。所以我老一看到这厮的帖子,就断定这厮在国内,就是一做外包的,完全不理解交易的原理和过程,没干过正经CS开发,最多堆一点业务逻辑代码之类。Oracle/IBM的数据库,在他看来是神圣不可侵犯的东西。

结果这哥们上来胡侃了一通啥CRUD不是Transaction(这尼玛就不是可以比较的两件事),告诉大家绝对不要相信open source,要绝对相信厂家(Oracle, IBM),这事情很神秘很高深,不是你们可以搞懂的,只有厂家懂,你们乱来,是要负政治责任滴。政治责任,懂吗?你付得起吗?这transaction有多神秘多难,你们懂吗?看过postgresql吗?

这尼玛postgresql不就是开源的?你这TMD整出一单机版的准备糊弄铁道部?

计算机技术这东西说白了就是一层窗户纸,一捅就破。没有任何东西是神圣不可侵犯。当年的Spring就是对EJB的不满,啥JB XA,净尼玛胡扯。国内当时照样有人到处宣传,说唯一正确的交易处理方法就是EJB,结果现在没有人用EJB了,傻了吧?EJB就是Sun瞎JB捣鼓出来卖ApplicationServer用的,你看看现在还有人买ApplicationServer吗?数据库这东西也是一样,现在的NoSql就是对relational的修正。你做transaction可以在应用层,也可以在数据库层。有人非得说transaction一定要在数据库层,一定要指定厂家才行,那如果不是故意装傻,就是真傻了。国外这事早就讨论清楚了,所以才有NoSql风生水起。只有国内厂家的Sales,“干了”10多年open source居然没见过啥像样项目的,才敢这么梗着脖子胡扯。

我老在雄文里辛辛苦苦地给大家捅破这层窗户纸,大家居然看不懂,仍然顺着强大的思维惯性,下意识地觉得这东西很神秘,不是自己可以碰的,还是别想了,想也没用,做不出来的,不如听厂家的,一身轻松,省事不费脑,还有好借口。

我老实在是对你们这些人很失望。

家园 我这是第一次看到用政府部门做的网站

做标准。

能不能解释一下为什么Obamacare的网站,可以作为benchmark?

家园 2000万美元的确太少,我报个无责任参考价10亿美元

10亿美元包硬件软件带5年维护不闭口合同。误差正负50%

不知道会不会被公司K

听说第一轮IBM也竞标了,还是个天文数字。其实我觉得应该是会亏本的。

谁会知道峰值访问量500w

这意味着很多成熟解决方案都不能用了。如果要拿taobao比的话,的确人家搞的都是不怎么花钱的东西,但是人家重写了一遍。。

前面回复有误。重写。

我觉得比较省钱的方案是多层架构。多层不是应用多层,而是应用+服务器多层。每个省一套应用服务。该省的服务器只卖该省出发的车票,该省用户只访问该省服务器。他的业务说起来不是很难,查询比较多,针对查询可以把查询分流到特定服务器+缓存处理。查询不是实时的,业务要做改变。订票和查询分离,单独做transaction,访问单独的服务器,数据库。由于每个省只卖自己出发的车票,意味着订购处理可以放在省一级,每个省自己处理完请求后再统一汇总到中心去。

当然还有个中心服务器,但是不对用户开放。只供后台汇总数据,发布数据之用。最后现有的业务流程要改变,发布数据和开放订购不能同时,这样人家就会在前面自己去注册看数据决定要不要抢票了。其他林林总总要改的还很多。

总之现在是中心处理式的,要改成能横向扩展的分布式应用。铁道部还是老老实实采购大厂商的服务吧,现在这种水平说实话他们现在解决不了这个问题。不是一年两年,十年也不行。

错了勿喷。。。毕竟不懂铁路业务。

家园 业务和技术互喷,好吧我说问题在钱上

没钱说个jb。。

上了网站看了一下,2000万里面有1900万去买了硬件,剩下的50万内部吃喝请嫖去掉了。最后50万准备来做个系统。然后里面集成了一套流行开源产品。而且我也不觉得质量来的是“深入骨髓”的水平。国内平均档次吧。

好吧,当然用开源也不是什么大问题,问题是要懂在哪里用,用什么开源也是要花钱的。而且开源一般通用型的,说实话这里只能无关紧要的地方用用。

所以

所以没钱说个jb。。

家园 铁道部也是政府部门

可以作为反面教材的benchmark。

全看树展主题 · 分页首页 上页
/ 13
下页 末页


有趣有益,互惠互利;开阔视野,博采众长。
虚拟的网络,真实的人。天南地北客,相逢皆朋友

Copyright © cchere 西西河