锁定老帖子 主题:如果让你设计铁道部购票网站,你怎么做
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2012-01-12
zmcsut 写道 linliangyi2007 写道 zmcsut 写道 我用自动登录买的票,但我不是黄牛。
屏蔽刷票次数?多少秒登录一次算刷票?哪怕10秒登一次也比人工来的舒服,可靠。 治标不治本的东西? 你没看我的回帖么,还问多少秒,都说了跟时间无关!! 我屏蔽的是你的CPU ID,从同一CPU发出的请求,明白么。还有IP,还有网卡物理地址,这些都可以作为判断依据!! 人工需不需要多次尝试登录? 我就不明白CPU ID 能判断是人还是软件或者是狗在操作。 什么逻辑啊,我说什么你说什么啊! CPU ID跟判断谁操作有关系么?! 一个ID能证明来至一台机器的请求,如果同一台机器在1秒内提出相同的1000次请求,我可以忽略后面提交的999次,这样队列中,你的请求就只有1次,跟其他正常用户的请求是平等的。我并不关心这个请求是人操作还是狗操作,听懂没!! 跟你这种只顾反驳别人而不认真看技术问题的人讨论,真累! |
|
返回顶楼 | |
发表时间:2012-01-12
我永远不会试图去战胜一个纯傻逼,因为他会把我的智商拖到跟他一个水平,然后再用他丰富的经验打败我!
----------------------- 刚看到的一句话,呵呵,挺适合此贴的。 |
|
返回顶楼 | |
发表时间:2012-01-12
linliangyi2007 写道 嗨,这个系统设计的确实有问题!
有很多不该出的毛病都出。 流量大造成系统繁忙可以理解,但是各种没响应,还有交了钱没订到票,这个完全可以避免的。 总之,大家看不上它,是有原因的。 30分钟不交钱就把车票返回可售车票池,估计也是根据需求订出来的,不会无缘无故这样做的 原因可能就是防止有人占坑,只要订到20号的票,就把16号的票退了,导致16号想走的人买不到16号的票 既然这样,那如何防止“交了钱没订到票”事情的发生呢? |
|
返回顶楼 | |
发表时间:2012-01-12
linliangyi2007 写道 zmcsut 写道 linliangyi2007 写道 zmcsut 写道 我用自动登录买的票,但我不是黄牛。
屏蔽刷票次数?多少秒登录一次算刷票?哪怕10秒登一次也比人工来的舒服,可靠。 治标不治本的东西? 你没看我的回帖么,还问多少秒,都说了跟时间无关!! 我屏蔽的是你的CPU ID,从同一CPU发出的请求,明白么。还有IP,还有网卡物理地址,这些都可以作为判断依据!! 人工需不需要多次尝试登录? 我就不明白CPU ID 能判断是人还是软件或者是狗在操作。 什么逻辑啊,我说什么你说什么啊! CPU ID跟判断谁操作有关系么?! 一个ID能证明来至一台机器的请求,如果同一台机器在1秒内提出相同的1000次请求,我可以忽略后面提交的999次,这样队列中,你的请求就只有1次,跟其他正常用户的请求是平等的。我并不关心这个请求是人操作还是狗操作,听懂没!! 跟你这种只顾反驳别人而不认真看技术问题的人讨论,真累! 摆脱你用过自动订票软件再发言,登陆间隔可以自行设置. 假如6点开始可以登陆,实际鬼知道这系统会延迟多少分钟. 一边是机器5点50分开始每10秒一次尝试自动登陆,另一边人工6点开始尝试登陆。 你认为谁的几率更大。 人工登陆后还得不停点查询,保证session不失效,否则可排不上队了。 这样的话,还不如不排队,8点来碰运气。 你这也叫技术?在一个本来就够狗屎的网站上加更多的狗屎。 |
|
返回顶楼 | |
发表时间:2012-01-12
weifly 写道 linliangyi2007 写道 嗨,这个系统设计的确实有问题!
有很多不该出的毛病都出。 流量大造成系统繁忙可以理解,但是各种没响应,还有交了钱没订到票,这个完全可以避免的。 总之,大家看不上它,是有原因的。 30分钟不交钱就把车票返回可售车票池,估计也是根据需求订出来的,不会无缘无故这样做的 原因可能就是防止有人占坑,只要订到20号的票,就把16号的票退了,导致16号想走的人买不到16号的票 既然这样,那如何防止“交了钱没订到票”事情的发生呢? 问题是现在这系统能保证30分钟一定能支付成功吗? 改成一天难道会死吗? 晚上12点到6点,不让人订票,难道就不能让人支付吗? |
|
返回顶楼 | |
发表时间:2012-01-12
vtrtbb 写道 说实话,铁路系统基本都挺复杂。
有的系统可不像秒杀不到东西这么简单,弄不好就是重大事故。 不可能有重大事故的,网厅渠道票务肯定与实体渠道分离的,否则12306网站的巨大访问量冲垮了实体渠道就麻烦了。 |
|
返回顶楼 | |
发表时间:2012-01-12
zmcsut 写道 linliangyi2007 写道 光顾着抱怨,有点跑题了。下面言归正传,让我们从系统设计角度来看看要如何设计流量如此之大的东东。
本人觉得系统架构的关键要有3大部分 1.排队等待子系统 如此大的并发量不是简单的群集能承受的,因此,系统需要一个缓冲区,就好比在窗口面前排队一样,在进入订票流程前,应该有个排队处理系统,简单的页面,让电脑面前的用户知道自己的请求已经提交,系统慢,大概还需要几分钟才能受理你的订票请求。 如果大家玩过wow,下过魔兽的副本,就知道有个副本排队系统了,这样也一样。 此系统需要大量的HTTP前端服务器,接受用户请求,但不需要很复杂的业务逻辑。 2.订票流程处理子系统 进入该子系统的用户开始正式的订票流程,如,填写各种表单。该子系统关键在于需要一张表,用来记录用户已经订出的票,扣除系统剩余票数,这样不至于用户交钱了票没了。只有用户取消订票时,将票退回系统。 同时,该系统应该记录用户在订票流程的日志。 3.订票确认与分发子系统 用户完成所有信息填写后,进入该子系统,该系统负责最终登记用户的订票信息,并正式的将票据出售,同时从用户的资金账户中扣除钱款,并在系统中锁定票号。 用户将从这个系统中,最终确认自己的购买的票据时间,票据,出发到达等信息,即提供最终票务状态的查询。 剩下的具体设计,如,数据库集群设计,负载均衡设计,动态服务扩展设计,高可用性设计,高速缓存设计,这些议题大家平时都在讨论,这里就不多说了。 大方向设计出来了,小细节的可选方案就灵活了。我就不信这样的设计会出现钱扣了,票没出的情况... 尼玛,再次抱怨铁道部购票网站设计就是无脑的坑爹货! 排队不如撞大运,否则全让自动登录给抢了。 不敢相信第2、3点会没有?有证据吗? 感觉12306就是按第2、第3点来的,也就是这2步让人不太舒服。 限制IP登录数,随机码,手机短信验证,很多手段可以防止自动登录 |
|
返回顶楼 | |
发表时间:2012-01-12
zmcsut 写道 weifly 写道 linliangyi2007 写道 嗨,这个系统设计的确实有问题!
有很多不该出的毛病都出。 流量大造成系统繁忙可以理解,但是各种没响应,还有交了钱没订到票,这个完全可以避免的。 总之,大家看不上它,是有原因的。 30分钟不交钱就把车票返回可售车票池,估计也是根据需求订出来的,不会无缘无故这样做的 原因可能就是防止有人占坑,只要订到20号的票,就把16号的票退了,导致16号想走的人买不到16号的票 既然这样,那如何防止“交了钱没订到票”事情的发生呢? 问题是现在这系统能保证30分钟一定能支付成功吗? 改成一天难道会死吗? 晚上12点到6点,不让人订票,难道就不能让人支付吗? 如果按你这逻辑,车票预占时间改为一天,我相信每天12306一放票,黄牛党牛疯狂预占,最后票全被黄牛党占住,真正想买票的人票就等着哭吧! |
|
返回顶楼 | |
发表时间:2012-01-12
zmcsut 写道 AngelAndAngel 写道 引用 排队不如撞大运,否则全让自动登录给抢了。
不敢相信第2、3点会没有?有证据吗? 感觉12306就是按第2、第3点来的,也就是这2步让人不太舒服。 自动登录发的请求和普通请求无两样 照样排队。 软件是什么速度?人是什么速度。 按你说的,秒杀器还有个屁用。 而且这破系统,订单支付有时能给你退出来。 难道重新排队,45分钟内能排进去? 老弟,你刚入行吧 |
|
返回顶楼 | |
发表时间:2012-01-12
linliangyi2007 写道 vtrtbb 写道 说实话,铁路系统基本都挺复杂。
有的系统可不像秒杀不到东西这么简单,弄不好就是重大事故。 少来装复杂了,这个只不过是售票系统,又不是动车的控制系统! 再复杂也比不上证券交易系统和电信计费系统,能出啥事故!!最大事故就是定不来票而已 你们有木有想过春节晚上的电话和短信流量有多大?人家移动计费系统要是瘫痪那才是重大事故! 就一个订票系统,做成这样,里面的猫腻我就懒得说了! 狗屁都不知道人别在这里装2了好么 你知道电信和移动的接通率是多少么? 知道春节晚上的接通率又是多少么? 如果根据这个接通率换算出订单的失败率 你知道春节订票的这每天会有多少万张单子失败么? |
|
返回顶楼 | |