由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - 魏公公,赌局我接了,你把500万/秒的订票系统做出来
相关主题
大家都买过机票吧好多人害怕锁
老魏的全国一盘棋古德霸放个带细节设计的方案吧
联票问题是非常简单的问题继续,好虫这个赌约我接了
每秒500万魏公公的来信
我来提个方案,大家看合理不合理在讨论12306前
搞技术的,要有起码的是非观念 by 老魏古德霸啊古德霸,不打你脸是不行了
12306哪里有什么死锁问题!100%出票还真没在赌约里。
老魏号称100%出票,现在的算法有碎片化问题吧。还有一个问题
相关话题的讨论汇总
话题: 老魏话题: 车次话题: 魏公公话题: 请求话题: 500
进入Programming版参与讨论
1 (共1页)
g*****g
发帖数: 34805
1
光说不练的就是太监。
就按你提的要求,全国一盘棋。每天1000车次,每车次简化就20段,每车三种票,卧铺
,硬座,站票,每种1000张。上下铺什么的我就不跟你计较了。
你负责写服务器,给个web service的接口,我负责写500万次/秒并发的客户端。你
server怎么实现的,花多少钱,用什么架构我都不管。你装逼2万刀的机器我也不跟你
计较。你愿意内存数据库也行,你那什么三数据中心的光纤备份也可以省了。
反正不能重票,错票。不能有票不出。高峰的时候必须
能对99.9%的请求在30秒内作出响应并出票。你不放心我可以把client代码放上github
让第三
方验证。
你丫做出来之前,再来这BBS,就是吹牛装逼没有小鸡鸡的太监。你做出来我验证了,
我就自杀ID好了。这下你满意吧了。
L***n
发帖数: 6727
2
有种!挖操,俩资深业界人士开练啊,搞好了我们这些围观的长学问又长见识,双方
先写个specification吧?各写各的,魏老师写接口,古德霸写客户端的说明

github

【在 g*****g 的大作中提到】
: 光说不练的就是太监。
: 就按你提的要求,全国一盘棋。每天1000车次,每车次简化就20段,每车三种票,卧铺
: ,硬座,站票,每种1000张。上下铺什么的我就不跟你计较了。
: 你负责写服务器,给个web service的接口,我负责写500万次/秒并发的客户端。你
: server怎么实现的,花多少钱,用什么架构我都不管。你装逼2万刀的机器我也不跟你
: 计较。你愿意内存数据库也行,你那什么三数据中心的光纤备份也可以省了。
: 反正不能重票,错票。不能有票不出。高峰的时候必须
: 能对99.9%的请求在30秒内作出响应并出票。你不放心我可以把client代码放上github
: 让第三
: 方验证。

A***e
发帖数: 130
3
support!

【在 L***n 的大作中提到】
: 有种!挖操,俩资深业界人士开练啊,搞好了我们这些围观的长学问又长见识,双方
: 先写个specification吧?各写各的,魏老师写接口,古德霸写客户端的说明
:
: github

d*******r
发帖数: 3299
4
我建议最后源代码都上 github, 由大家来评判! 我们晚辈来学习!!
真有一种 决战紫禁之巅 的感觉,哈哈
n*****t
发帖数: 22014
5
这才像样。
500 万次我估计带宽不够,server 跑不到满负荷怎么办?

github

【在 g*****g 的大作中提到】
: 光说不练的就是太监。
: 就按你提的要求,全国一盘棋。每天1000车次,每车次简化就20段,每车三种票,卧铺
: ,硬座,站票,每种1000张。上下铺什么的我就不跟你计较了。
: 你负责写服务器,给个web service的接口,我负责写500万次/秒并发的客户端。你
: server怎么实现的,花多少钱,用什么架构我都不管。你装逼2万刀的机器我也不跟你
: 计较。你愿意内存数据库也行,你那什么三数据中心的光纤备份也可以省了。
: 反正不能重票,错票。不能有票不出。高峰的时候必须
: 能对99.9%的请求在30秒内作出响应并出票。你不放心我可以把client代码放上github
: 让第三
: 方验证。

g*****g
发帖数: 34805
6
魏公公写服务的自然要保证带宽够。就像我负责写client,我写不出500万/秒并发那
是我自己的责任。低于99.9% 30秒响应那就不满足availability需要,我上面写的很清
楚了。
魏公公成天吹那4网卡全双工,每秒80Gb,5M/秒,每request可以有俩2KB,绰绰有余。

【在 n*****t 的大作中提到】
: 这才像样。
: 500 万次我估计带宽不够,server 跑不到满负荷怎么办?
:
: github

n*****t
发帖数: 22014
7
那是内网速度,公网这么干得多少钱?这个公平点讲最好改改,比如 aws 或者 do 上
跑,大概到多少我们认为相当于老魏的 500 万。
当然,老魏觉得可以整我也不反对

【在 g*****g 的大作中提到】
: 魏公公写服务的自然要保证带宽够。就像我负责写client,我写不出500万/秒并发那
: 是我自己的责任。低于99.9% 30秒响应那就不满足availability需要,我上面写的很清
: 楚了。
: 魏公公成天吹那4网卡全双工,每秒80Gb,5M/秒,每request可以有俩2KB,绰绰有余。

g*****g
发帖数: 34805
8
也没多少钱,他牛逼单机4网卡80Gb,能用满,不止吹了一次了。想来是现有的硬件。
我的client估计得每小时500块左右,我就掏了。反正测试一个小时足够。
500万次/秒是他吹的,做不到你不是打他的脸吗?12306不是内网应用,我没占他便宜。

【在 n*****t 的大作中提到】
: 那是内网速度,公网这么干得多少钱?这个公平点讲最好改改,比如 aws 或者 do 上
: 跑,大概到多少我们认为相当于老魏的 500 万。
: 当然,老魏觉得可以整我也不反对

d*******r
发帖数: 3299
9
魏老师你要是真写出来了,也请上传到 github 供大家学习吧,这样你肯定声明大震,
搞不好铁道部还请你去指导他们呢.
q*c
发帖数: 9453
10
aws 内网对内网不要钱.
我觉得老魏玄啊。当年我们2百万每秒,那都是毫不相关的数据,一个组做,各种
batch, offline 还是每天oncall 不断出错, 现在这是 500万, real time online,
难度得上 2个数量级。都是不能出错的数据。
我也许可以免费提供一些 instance 什么的用来测试。不过这 500 万,怕不得好几百
个 instance, 会暴露我的账号,那就不爽了......提供几个还是可以的。

【在 n*****t 的大作中提到】
: 那是内网速度,公网这么干得多少钱?这个公平点讲最好改改,比如 aws 或者 do 上
: 跑,大概到多少我们认为相当于老魏的 500 万。
: 当然,老魏觉得可以整我也不反对

相关主题
搞技术的,要有起码的是非观念 by 老魏好多人害怕锁
12306哪里有什么死锁问题!古德霸放个带细节设计的方案吧
老魏号称100%出票,现在的算法有碎片化问题吧。继续,好虫这个赌约我接了
进入Programming版参与讨论
g*****g
发帖数: 34805
11
500万client那是我出钱,魏公公的是单机服务器,你让他上cluster又是打他脸。

【在 q*c 的大作中提到】
: aws 内网对内网不要钱.
: 我觉得老魏玄啊。当年我们2百万每秒,那都是毫不相关的数据,一个组做,各种
: batch, offline 还是每天oncall 不断出错, 现在这是 500万, real time online,
: 难度得上 2个数量级。都是不能出错的数据。
: 我也许可以免费提供一些 instance 什么的用来测试。不过这 500 万,怕不得好几百
: 个 instance, 会暴露我的账号,那就不爽了......提供几个还是可以的。

n*****t
发帖数: 22014
12
你凑不够 500 万怎么算?

【在 g*****g 的大作中提到】
: 500万client那是我出钱,魏公公的是单机服务器,你让他上cluster又是打他脸。
g*****g
发帖数: 34805
13
凑不够500万那当然是我的问题,没啥好说的。老实说我很怀疑魏公公的系统撑得住10
万,我多半花不了多少钱。

【在 n*****t 的大作中提到】
: 你凑不够 500 万怎么算?
q*c
发帖数: 9453
14
aws 起的实例在一个 dc 内部, 都是 10 Gb 的光线。 网卡都是 gbs 级别的。 我估
摸网卡性能远没到极限的时候, 老魏的数据库就罩不住了。。。

【在 n*****t 的大作中提到】
: 这才像样。
: 500 万次我估计带宽不够,server 跑不到满负荷怎么办?
:
: github

g*****g
发帖数: 34805
15
魏公公这是单机,秒杀你们cluster有没有,宇宙无敌,可以出银河系的票。都是他的
原话。现在大家可以
验证了。
到底是真牛逼还是太监。

,

【在 q*c 的大作中提到】
: aws 内网对内网不要钱.
: 我觉得老魏玄啊。当年我们2百万每秒,那都是毫不相关的数据,一个组做,各种
: batch, offline 还是每天oncall 不断出错, 现在这是 500万, real time online,
: 难度得上 2个数量级。都是不能出错的数据。
: 我也许可以免费提供一些 instance 什么的用来测试。不过这 500 万,怕不得好几百
: 个 instance, 会暴露我的账号,那就不爽了......提供几个还是可以的。

L*****e
发帖数: 8347
16
赞!

github

【在 g*****g 的大作中提到】
: 光说不练的就是太监。
: 就按你提的要求,全国一盘棋。每天1000车次,每车次简化就20段,每车三种票,卧铺
: ,硬座,站票,每种1000张。上下铺什么的我就不跟你计较了。
: 你负责写服务器,给个web service的接口,我负责写500万次/秒并发的客户端。你
: server怎么实现的,花多少钱,用什么架构我都不管。你装逼2万刀的机器我也不跟你
: 计较。你愿意内存数据库也行,你那什么三数据中心的光纤备份也可以省了。
: 反正不能重票,错票。不能有票不出。高峰的时候必须
: 能对99.9%的请求在30秒内作出响应并出票。你不放心我可以把client代码放上github
: 让第三
: 方验证。

q*c
发帖数: 9453
17
我们来开采盘吧。 我觉得老魏的东西5万就要出问题,赌 500伪币。
我可以贡献 5 个 aws instance, 5万够了。

【在 n*****t 的大作中提到】
: 你凑不够 500 万怎么算?
q*c
发帖数: 9453
18
你这客户端那是容易,5000万也没问题啊。offline 运行上一夜产生好时序测试数据,
下面只管起 instance 大并发请求并且验证就行了。
老魏那头要死人的。

【在 g*****g 的大作中提到】
: 魏公公写服务的自然要保证带宽够。就像我负责写client,我写不出500万/秒并发那
: 是我自己的责任。低于99.9% 30秒响应那就不满足availability需要,我上面写的很清
: 楚了。
: 魏公公成天吹那4网卡全双工,每秒80Gb,5M/秒,每request可以有俩2KB,绰绰有余。

L*****e
发帖数: 8347
19
5万我觉得没问题,我赌20万。。。

【在 q*c 的大作中提到】
: 我们来开采盘吧。 我觉得老魏的东西5万就要出问题,赌 500伪币。
: 我可以贡献 5 个 aws instance, 5万够了。

i**i
发帖数: 1500
20
我赌老魏输,500伪币

【在 q*c 的大作中提到】
: 我们来开采盘吧。 我觉得老魏的东西5万就要出问题,赌 500伪币。
: 我可以贡献 5 个 aws instance, 5万够了。

相关主题
魏公公的来信100%出票还真没在赌约里。
在讨论12306前还有一个问题
古德霸啊古德霸,不打你脸是不行了100%和必需出票属于没戏了
进入Programming版参与讨论
z****e
发帖数: 54598
21
我也下注老魏输
50个包子也就是500伪币
q*c
发帖数: 9453
22
这个不行啊,因为这个难的就是强耦合数据的大并发。你一个弱鸡服务器能上1k, 完
全不代表10倍牛逼服务器能10k.
互相各种锁啊什么的和服务器性能不是线性关系。不过话说回来我估计 aws 就够了,
因为我看不到 5 万老魏的家伙就停不住了。。。

【在 n*****t 的大作中提到】
: 那是内网速度,公网这么干得多少钱?这个公平点讲最好改改,比如 aws 或者 do 上
: 跑,大概到多少我们认为相当于老魏的 500 万。
: 当然,老魏觉得可以整我也不反对

n*****t
发帖数: 22014
23
不用起数据库的,没必要。5M 票,切成 20 段,也就 100M 的寻址。一个 request 4
bytes 标示,我全在 memory 里处理,直接拿 24 bit map 到我的 array,剩下就是
lock/write/unlock 了。
请求的编码、出票都放在 client,谁先死还不一定呢,LOL

【在 q*c 的大作中提到】
: aws 起的实例在一个 dc 内部, 都是 10 Gb 的光线。 网卡都是 gbs 级别的。 我估
: 摸网卡性能远没到极限的时候, 老魏的数据库就罩不住了。。。

g*****g
发帖数: 34805
24
你不服你也可以实现一个,一块测了,不麻烦。

4

【在 n*****t 的大作中提到】
: 不用起数据库的,没必要。5M 票,切成 20 段,也就 100M 的寻址。一个 request 4
: bytes 标示,我全在 memory 里处理,直接拿 24 bit map 到我的 array,剩下就是
: lock/write/unlock 了。
: 请求的编码、出票都放在 client,谁先死还不一定呢,LOL

q*c
发帖数: 9453
25
这不可能。客户端只要提前计算好测试数据,大并发想多少就能多少。
上500个 aws small, 100快一小时,500万肯定没问题,几分钟就能火力全开。老魏那
面才是问题。

【在 n*****t 的大作中提到】
: 你凑不够 500 万怎么算?
n*****t
发帖数: 22014
26
我的方案给过了,比老魏的简单多了。老魏赢了就不用我麻烦了,
哈哈

【在 g*****g 的大作中提到】
: 你不服你也可以实现一个,一块测了,不麻烦。
:
: 4

g*****g
发帖数: 34805
27
给方案没用,你那方案跟魏公公的一样不靠谱,不服可以实测,不要光说不练。

【在 n*****t 的大作中提到】
: 我的方案给过了,比老魏的简单多了。老魏赢了就不用我麻烦了,
: 哈哈

q*c
发帖数: 9453
28
单机啊!6000万张强耦合的票啊!
这可不是 serve hello world.

【在 L*****e 的大作中提到】
: 5万我觉得没问题,我赌20万。。。
n*****t
发帖数: 22014
29
你 beat 老魏我就上

【在 g*****g 的大作中提到】
: 给方案没用,你那方案跟魏公公的一样不靠谱,不服可以实测,不要光说不练。
g*****g
发帖数: 34805
30
你那设定根本就是错的,客户只是定硬座,卧铺,站票,根本不细分到单个座位。你光
查找有没有符合要求的票存在就要挂。卖1件相同的商品100件,远比卖100件不同的商
品复杂,就是因为锁不能分布。
我老看你年级大,不想把你推入绝路。你该干嘛干嘛去吧。

【在 n*****t 的大作中提到】
: 你 beat 老魏我就上
相关主题
不是古德霸都已经说同意赌博了么?怎么又开始扯淡了?老魏的全国一盘棋
老魏,我给你总结一下联票问题是非常简单的问题
大家都买过机票吧每秒500万
进入Programming版参与讨论
q*c
发帖数: 9453
31
断电咋办?数据没 consistency 出错就嗝屁了。你都没法恢复。

4

【在 n*****t 的大作中提到】
: 不用起数据库的,没必要。5M 票,切成 20 段,也就 100M 的寻址。一个 request 4
: bytes 标示,我全在 memory 里处理,直接拿 24 bit map 到我的 array,剩下就是
: lock/write/unlock 了。
: 请求的编码、出票都放在 client,谁先死还不一定呢,LOL

i**i
发帖数: 1500
32
你正好在老魏的机器上做算法。老魏负责底层服务。

【在 n*****t 的大作中提到】
: 你 beat 老魏我就上
n**x
发帖数: 606
33
你的方案基本跟老魏类似。问题在于对memory里的数据interlocked 操作性能如何.每
秒500万做的到哇

4

【在 n*****t 的大作中提到】
: 不用起数据库的,没必要。5M 票,切成 20 段,也就 100M 的寻址。一个 request 4
: bytes 标示,我全在 memory 里处理,直接拿 24 bit map 到我的 array,剩下就是
: lock/write/unlock 了。
: 请求的编码、出票都放在 client,谁先死还不一定呢,LOL

L*****e
发帖数: 8347
34
一个车次是强耦合,不同车次之间是强耦合吗?

【在 q*c 的大作中提到】
: 单机啊!6000万张强耦合的票啊!
: 这可不是 serve hello world.

g*****g
发帖数: 34805
35
全国一盘棋,支持任意联票。魏公公提了很多次了。我让它简化一点最多出两张的联票
就好。

【在 L*****e 的大作中提到】
: 一个车次是强耦合,不同车次之间是强耦合吗?
L*****e
发帖数: 8347
36
任意联票是啥意思?是说我可以一次订北京到上海,上海到广州,广州到福建这样的一
串联票?

【在 g*****g 的大作中提到】
: 全国一盘棋,支持任意联票。魏公公提了很多次了。我让它简化一点最多出两张的联票
: 就好。

q*c
发帖数: 9453
37
联票咋办?
这问题坑爹就在数据耦合上,不然上 cluster 就太容易了。

【在 L*****e 的大作中提到】
: 一个车次是强耦合,不同车次之间是强耦合吗?
g*****g
发帖数: 34805
38
对,魏公公要全国一盘棋,提了很多次。全国一盘棋不就是全国强耦合吗。
你千万别再给他简化要求,我顶上已经让他很多了,再让就是打他的脸不是。

【在 L*****e 的大作中提到】
: 任意联票是啥意思?是说我可以一次订北京到上海,上海到广州,广州到福建这样的一
: 串联票?

z****e
发帖数: 54598
39
北京到福州
中间路线取到最短的
也就是不允许去广州绕圈之后再爬回来

【在 L*****e 的大作中提到】
: 任意联票是啥意思?是说我可以一次订北京到上海,上海到广州,广州到福建这样的一
: 串联票?

q*c
发帖数: 9453
40
给起始终点系统给出票,和飞机一样。

【在 L*****e 的大作中提到】
: 任意联票是啥意思?是说我可以一次订北京到上海,上海到广州,广州到福建这样的一
: 串联票?

相关主题
每秒500万12306哪里有什么死锁问题!
我来提个方案,大家看合理不合理老魏号称100%出票,现在的算法有碎片化问题吧。
搞技术的,要有起码的是非观念 by 老魏好多人害怕锁
进入Programming版参与讨论
n*****t
发帖数: 22014
41
500 万我不敢说,1M 的请求,其中 2/3 查询,1/3 出票我预估没问题,每秒 330k 的
锁不是啥稀罕事

【在 n**x 的大作中提到】
: 你的方案基本跟老魏类似。问题在于对memory里的数据interlocked 操作性能如何.每
: 秒500万做的到哇
:
: 4

L*****e
发帖数: 8347
42
哦,不知道还有这个前提。。。算了,我还是围观吧。。。

【在 q*c 的大作中提到】
: 联票咋办?
: 这问题坑爹就在数据耦合上,不然上 cluster 就太容易了。

z****e
发帖数: 54598
43
老魏这里面有图论的算法
北京到福州是一个很好的例子
有n条路可以走,而且如果节前先到广州,再从广州经厦门到福州
这种百分百有空位,因为节前都是出广州,没有人进广州
但是没有人会这样走,必需要求路径最短
否则太不现实啊

【在 g*****g 的大作中提到】
: 对,魏公公要全国一盘棋,提了很多次。全国一盘棋不就是全国强耦合吗。
: 你千万别再给他简化要求,我顶上已经让他很多了,再让就是打他的脸不是。

z****e
发帖数: 54598
44
而且路经权重必需最短,这个要求很reasonable
没有人会买绕道票的
这个要求加上去,很容易就死锁了

【在 q*c 的大作中提到】
: 给起始终点系统给出票,和飞机一样。
q*c
发帖数: 9453
45
靠,还要最短路径问题,这可是越来越困难了。

【在 z****e 的大作中提到】
: 北京到福州
: 中间路线取到最短的
: 也就是不允许去广州绕圈之后再爬回来

z****e
发帖数: 54598
46
显然么
我从北京回家,你让我先经过广州,那我肯定不干
现在全国八纵八横,这里面没有死锁我就不信

【在 q*c 的大作中提到】
: 靠,还要最短路径问题,这可是越来越困难了。
n*****t
发帖数: 22014
47
实时写 SSD,这点数据量不是啥大问题。client 出票有 log,一整就把余票算出来了。

【在 q*c 的大作中提到】
: 断电咋办?数据没 consistency 出错就嗝屁了。你都没法恢复。
:
: 4

g*****g
发帖数: 34805
48
你们别把为魏公公往死里整,就票一,(车次,起点,终点),票二,(车次,起点,
终点)就可以了。
车次用户自选,保证要嘛有票都出了,要嘛至少一个没票都不出(transaction)就行了。

【在 z****e 的大作中提到】
: 老魏这里面有图论的算法
: 北京到福州是一个很好的例子
: 有n条路可以走,而且如果节前先到广州,再从广州经厦门到福州
: 这种百分百有空位,因为节前都是出广州,没有人进广州
: 但是没有人会这样走,必需要求路径最短
: 否则太不现实啊

z****e
发帖数: 54598
49
来来来,先把图给弄上去,数数里面多少个nodes
http://upload.wikimedia.org/wikipedia/commons/f/fc/Rail_map_of_
q*c
发帖数: 9453
50
没票的时候绕道也行吧,我看不要这个要求就已经不行了。

【在 z****e 的大作中提到】
: 而且路经权重必需最短,这个要求很reasonable
: 没有人会买绕道票的
: 这个要求加上去,很容易就死锁了

相关主题
古德霸放个带细节设计的方案吧在讨论12306前
继续,好虫这个赌约我接了古德霸啊古德霸,不打你脸是不行了
魏公公的来信100%出票还真没在赌约里。
进入Programming版参与讨论
n*****t
发帖数: 22014
51
这个完全不用放到中心节点算,前端算好了拿来查就是了

【在 z****e 的大作中提到】
: 老魏这里面有图论的算法
: 北京到福州是一个很好的例子
: 有n条路可以走,而且如果节前先到广州,再从广州经厦门到福州
: 这种百分百有空位,因为节前都是出广州,没有人进广州
: 但是没有人会这样走,必需要求路径最短
: 否则太不现实啊

z****e
发帖数: 54598
52
这个需求加上去,直接挂了
图论最短路径到现在理论都无解啊
除了穷举,但是一旦穷举的话
查票出票锁票就很恶心了,并发上5w达成死锁没问题

了。

【在 g*****g 的大作中提到】
: 你们别把为魏公公往死里整,就票一,(车次,起点,终点),票二,(车次,起点,
: 终点)就可以了。
: 车次用户自选,保证要嘛有票都出了,要嘛至少一个没票都不出(transaction)就行了。

g*****g
发帖数: 34805
53
我不管你怎么实现。你满足了要求,拿出web service interface我来测就是。

【在 n*****t 的大作中提到】
: 这个完全不用放到中心节点算,前端算好了拿来查就是了
z****e
发帖数: 54598
54
出票时候要锁啊,老魏说不锁
那就做吧,我自信做不出来,尤其是这种恶心的图题

【在 n*****t 的大作中提到】
: 这个完全不用放到中心节点算,前端算好了拿来查就是了
q*c
发帖数: 9453
55
不能联票那就太容易了吧,每条线一个服务器数据库。。。
不过你基本上买了前段的票就没后面的,娃哈哈, 然后不断退票买新票 进入史无前例
的人工死锁局面。。。

【在 L*****e 的大作中提到】
: 哦,不知道还有这个前提。。。算了,我还是围观吧。。。
n*****t
发帖数: 22014
56
你仿佛对我这个架构都不认同吧?我只负责查票有没有,售出,其余全是你 client 做。
你先确认一下

【在 g*****g 的大作中提到】
: 我不管你怎么实现。你满足了要求,拿出web service interface我来测就是。
g*****g
发帖数: 34805
57
12306还有客户端做的?就是个web应用。你愿意在web层实现逻辑,可以,反正你要负
责实现。
我不管你怎么分层。我只管来订票。

做。

【在 n*****t 的大作中提到】
: 你仿佛对我这个架构都不认同吧?我只负责查票有没有,售出,其余全是你 client 做。
: 你先确认一下

L*****e
发帖数: 8347
58
问题是最短路径的票卖完了的话,就得给出绕道的票吧?而且,不是光锁每段的起点终
点,途经所有站也得锁吧?

★ 发自iPhone App: ChineseWeb 8.2.2

【在 z****e 的大作中提到】
: 而且路经权重必需最短,这个要求很reasonable
: 没有人会买绕道票的
: 这个要求加上去,很容易就死锁了

g*****g
发帖数: 34805
59
行了行了,就客户手工给出联票路径,满足了就行,不用那么复杂。

【在 L*****e 的大作中提到】
: 问题是最短路径的票卖完了的话,就得给出绕道的票吧?而且,不是光锁每段的起点终
: 点,途经所有站也得锁吧?
:
: ★ 发自iPhone App: ChineseWeb 8.2.2

n*****t
发帖数: 22014
60
对我中心节点,前端就是 client,你负责把客户的车次、时间、区段编码,找我查有
票没票,我告诉你有票了,你申请锁定,然后让客户付款、出票、记录,最后跟我确认
售出。
明白?

【在 g*****g 的大作中提到】
: 12306还有客户端做的?就是个web应用。你愿意在web层实现逻辑,可以,反正你要负
: 责实现。
: 我不管你怎么分层。我只管来订票。
:
: 做。

相关主题
还有一个问题老魏,我给你总结一下
100%和必需出票属于没戏了大家都买过机票吧
不是古德霸都已经说同意赌博了么?怎么又开始扯淡了?老魏的全国一盘棋
进入Programming版参与讨论
q*c
发帖数: 9453
61
就这个 transaction 的要求是难缠。

【在 g*****g 的大作中提到】
: 行了行了,就客户手工给出联票路径,满足了就行,不用那么复杂。
g*****g
发帖数: 34805
62
我不管你怎么写,反正接口必须是web interface或者web service interface. 我买票
请求,
你给出买票成功与否就行。假定钱不是问题好了,我都不想在这上面难为你。

【在 n*****t 的大作中提到】
: 对我中心节点,前端就是 client,你负责把客户的车次、时间、区段编码,找我查有
: 票没票,我告诉你有票了,你申请锁定,然后让客户付款、出票、记录,最后跟我确认
: 售出。
: 明白?

n*****t
发帖数: 22014
63
不整图的吧?什么车次是客户自己选的,你可以说我要北京到武汉,武汉到长沙,我才
没功夫帮你选路径呢。
上锁的话,你觉得每秒多少次是比较现实的?我可不用数据库啊

【在 z****e 的大作中提到】
: 出票时候要锁啊,老魏说不锁
: 那就做吧,我自信做不出来,尤其是这种恶心的图题

z****e
发帖数: 54598
64
这个逻辑没问题,但是如果最短路径或者相对短路径票未卖完
就出绕道票的话,就应该判定为失败,这个要求不算过份
其实现实中一旦出现绕到票的话,很多人就不回了
农民工做火车,很少转车的,我就没见过有人春运回家还转火车的
除非是回新疆,那这个没办法,在西安转车

【在 L*****e 的大作中提到】
: 问题是最短路径的票卖完了的话,就得给出绕道的票吧?而且,不是光锁每段的起点终
: 点,途经所有站也得锁吧?
:
: ★ 发自iPhone App: ChineseWeb 8.2.2

z****e
发帖数: 54598
65
老大,你没坐过春运的火车啊?
不过你上海人,可能还真是如此

【在 n*****t 的大作中提到】
: 不整图的吧?什么车次是客户自己选的,你可以说我要北京到武汉,武汉到长沙,我才
: 没功夫帮你选路径呢。
: 上锁的话,你觉得每秒多少次是比较现实的?我可不用数据库啊

n*****t
发帖数: 22014
66
为啥必须是 web interface???
这种负荷全都没必要放在瓶颈的中心节点,我只接受 tcpip 数据包

【在 g*****g 的大作中提到】
: 我不管你怎么写,反正接口必须是web interface或者web service interface. 我买票
: 请求,
: 你给出买票成功与否就行。假定钱不是问题好了,我都不想在这上面难为你。

n*****t
发帖数: 22014
67
现在 12306 帮你选最优路径?

【在 z****e 的大作中提到】
: 老大,你没坐过春运的火车啊?
: 不过你上海人,可能还真是如此

L*****e
发帖数: 8347
68
就算不用算最短路径,我是说如果从北京到上海途径济南,蚌埠,南京等站,你不能单
说某次列车卖掉一张票,而是该次列车途经所有站的票都要更新。。。

★ 发自iPhone App: ChineseWeb 8.2.2

【在 g*****g 的大作中提到】
: 行了行了,就客户手工给出联票路径,满足了就行,不用那么复杂。
n*****t
发帖数: 22014
69
对,我的方案里,要把沿途经过的 20 个区段都标示为售出

【在 L*****e 的大作中提到】
: 就算不用算最短路径,我是说如果从北京到上海途径济南,蚌埠,南京等站,你不能单
: 说某次列车卖掉一张票,而是该次列车途经所有站的票都要更新。。。
:
: ★ 发自iPhone App: ChineseWeb 8.2.2

g*****g
发帖数: 34805
70
这是当然,而且每车次的每段座位得一样。用户只说定卧铺硬座,出票是得有号的。

【在 L*****e 的大作中提到】
: 就算不用算最短路径,我是说如果从北京到上海途径济南,蚌埠,南京等站,你不能单
: 说某次列车卖掉一张票,而是该次列车途经所有站的票都要更新。。。
:
: ★ 发自iPhone App: ChineseWeb 8.2.2

相关主题
老魏的全国一盘棋我来提个方案,大家看合理不合理
联票问题是非常简单的问题搞技术的,要有起码的是非观念 by 老魏
每秒500万12306哪里有什么死锁问题!
进入Programming版参与讨论
g*****g
发帖数: 34805
71
因为12306是网站,你要是不会写,还是先去修炼去,别来捣浆糊了。

【在 n*****t 的大作中提到】
: 为啥必须是 web interface???
: 这种负荷全都没必要放在瓶颈的中心节点,我只接受 tcpip 数据包

n*****t
发帖数: 22014
72
草,你的 java 老师没教过你 socket?我还得很无聊的识别你 http get?

【在 g*****g 的大作中提到】
: 因为12306是网站,你要是不会写,还是先去修炼去,别来捣浆糊了。
g*****g
发帖数: 34805
73
你丫不会写就说不会,一个web service interface是最简单的了。http本来就有
overhead. 这都是系统scalability要求的一部分。

【在 n*****t 的大作中提到】
: 草,你的 java 老师没教过你 socket?我还得很无聊的识别你 http get?
q*c
发帖数: 9453
74
是啊, 这么多的锁, 各种操作,麻烦的很

【在 L*****e 的大作中提到】
: 就算不用算最短路径,我是说如果从北京到上海途径济南,蚌埠,南京等站,你不能单
: 说某次列车卖掉一张票,而是该次列车途经所有站的票都要更新。。。
:
: ★ 发自iPhone App: ChineseWeb 8.2.2

z****e
发帖数: 54598
75
你自己回家时候自己选的
一般都是两点之间最短路径
你从北京回上海会先去广州么?

【在 n*****t 的大作中提到】
: 现在 12306 帮你选最优路径?
g*****g
发帖数: 34805
76
魏公公的无敌单机单线程,不麻烦。简单的贪婪算法就行了。我也没要求他最优分配。

【在 q*c 的大作中提到】
: 是啊, 这么多的锁, 各种操作,麻烦的很
n*****t
发帖数: 22014
77
拉几把倒吧,你不会我免费给你写一段,放在你哪里跑,client 起个 lightweight
httpd,专门转换成 tcpip request
这几把跟简单复杂没半毛钱关系,压根就是没必要的负荷

【在 g*****g 的大作中提到】
: 你丫不会写就说不会,一个web service interface是最简单的了。http本来就有
: overhead. 这都是系统scalability要求的一部分。

z****e
发帖数: 54598
78
我想了下
还是不会出绕到票
一般是这样
比如从北京到上海
你可以没有到上海的票
但是这个时候,一般人会退一步
你不把我送到上海可以,送到上海附近
也就是会找离上海最近的一个点
然后到上海附近,再换汽车这样
但是如果你先把这个人送到广州
再从广州厦门福州杭州上海这样进来
那这种是肯定错误的
如果出现这种大面积绕圈的票,那应该判输
这个时候一般人会放弃买当天票
然后明天继续查,或者每隔那么几分钟试一下
g*****g
发帖数: 34805
79
你server放哪里我不管,没有什么放我这跑的。12306还放亿万民工机器上跑,你也太
搞笑了。

【在 n*****t 的大作中提到】
: 拉几把倒吧,你不会我免费给你写一段,放在你哪里跑,client 起个 lightweight
: httpd,专门转换成 tcpip request
: 这几把跟简单复杂没半毛钱关系,压根就是没必要的负荷

n*****t
发帖数: 22014
80
12306 是客户给出起点终点,系统给出两点间直达车次,我理解没错吧?现在还给你转
车的票次了?

【在 z****e 的大作中提到】
: 你自己回家时候自己选的
: 一般都是两点之间最短路径
: 你从北京回上海会先去广州么?

相关主题
老魏号称100%出票,现在的算法有碎片化问题吧。继续,好虫这个赌约我接了
好多人害怕锁魏公公的来信
古德霸放个带细节设计的方案吧在讨论12306前
进入Programming版参与讨论
z****e
发帖数: 54598
81
是,一旦没有票之后,没买到票的人会不停地重试

【在 n*****t 的大作中提到】
: 12306 是客户给出起点终点,系统给出两点间直达车次,我理解没错吧?现在还给你转
: 车的票次了?

g*****g
发帖数: 34805
82
那对他要求太高,用户直接给俩车次,每车次给出起点终点就行。其实就相当于能一次
出俩票就行。全国一盘棋是他一直要求的,不是我难为他。

i

【在 n*****t 的大作中提到】
: 12306 是客户给出起点终点,系统给出两点间直达车次,我理解没错吧?现在还给你转
: 车的票次了?

n*****t
发帖数: 22014
83
擦,让你写 socket 不会,我给你写好了不让跑,行,中间摆几个服务器也不是啥大钱
,我出还不行啊

【在 g*****g 的大作中提到】
: 你server放哪里我不管,没有什么放我这跑的。12306还放亿万民工机器上跑,你也太
: 搞笑了。

z****e
发帖数: 54598
84
你别忘了,还有http server的请求
网页生成的需求如果加上去,那个server的负载直接翻几番上去

【在 n*****t 的大作中提到】
: 擦,让你写 socket 不会,我给你写好了不让跑,行,中间摆几个服务器也不是啥大钱
: ,我出还不行啊

L*****e
发帖数: 8347
85
spec还是要明确一下,如果手工给出联票途径,比如说北京到上海,上海到广州,这算
两个请求还是一个请求?如果这算一个请求,那么要给出平均转车次数是多少,否则,
5m请求里每个转20次车。。。

★ 发自iPhone App: ChineseWeb 8.2.2

【在 g*****g 的大作中提到】
: 魏公公的无敌单机单线程,不麻烦。简单的贪婪算法就行了。我也没要求他最优分配。
n*****t
发帖数: 22014
86
所以现在实际是十几次查询出一张票。你不这么整还不行,北京到上海几十趟车,时间
价格都不一样,系统没法强制分配

【在 z****e 的大作中提到】
: 是,一旦没有票之后,没买到票的人会不停地重试
n*****t
发帖数: 22014
87
我在中间起个 c 写的 http server,收到 request 转换协议到中心节点查询,不占
central server 资源

【在 z****e 的大作中提到】
: 你别忘了,还有http server的请求
: 网页生成的需求如果加上去,那个server的负载直接翻几番上去

g*****g
发帖数: 34805
88
我说的很清楚了,这算一个请求,一个请求最多一次转车。联票必须一个请求,否则买到
下段没买到上段,不是白花钱。
最多两张票是最低的要求了。

【在 L*****e 的大作中提到】
: spec还是要明确一下,如果手工给出联票途径,比如说北京到上海,上海到广州,这算
: 两个请求还是一个请求?如果这算一个请求,那么要给出平均转车次数是多少,否则,
: 5m请求里每个转20次车。。。
:
: ★ 发自iPhone App: ChineseWeb 8.2.2

n*****t
发帖数: 22014
89
平均转车多少次?

【在 g*****g 的大作中提到】
: 我说的很清楚了,这算一个请求,一个请求最多一次转车。联票必须一个请求,否则买到
: 下段没买到上段,不是白花钱。
: 最多两张票是最低的要求了。

g*****g
发帖数: 34805
90
最多转车一次,我老给魏公公的都是最低要求。

【在 n*****t 的大作中提到】
: 平均转车多少次?
相关主题
古德霸啊古德霸,不打你脸是不行了100%和必需出票属于没戏了
100%出票还真没在赌约里。不是古德霸都已经说同意赌博了么?怎么又开始扯淡了?
还有一个问题老魏,我给你总结一下
进入Programming版参与讨论
z****e
发帖数: 54598
91
这种票一般不太可能出现
如果不考虑价格的话,干脆坐飞机去了
所以绕道走远路一定有一个价格上浮的范围
比如最终价格不得超过最短路径价格的一倍酱紫比较合理

【在 L*****e 的大作中提到】
: spec还是要明确一下,如果手工给出联票途径,比如说北京到上海,上海到广州,这算
: 两个请求还是一个请求?如果这算一个请求,那么要给出平均转车次数是多少,否则,
: 5m请求里每个转20次车。。。
:
: ★ 发自iPhone App: ChineseWeb 8.2.2

n*****t
发帖数: 22014
92
实际没那么多,大部分不转车。考虑现实情况,短途也不少。你一张票平均多少站,每
次出票平均几张要定义好。

【在 g*****g 的大作中提到】
: 最多转车一次,我老给魏公公的都是最低要求。
g*****g
发帖数: 34805
93
我没平均,反正我提出最多转车一次。很多人实际上要转2,3次车。

【在 n*****t 的大作中提到】
: 实际没那么多,大部分不转车。考虑现实情况,短途也不少。你一张票平均多少站,每
: 次出票平均几张要定义好。

z****e
发帖数: 54598
94
平均1.1次最多了

【在 n*****t 的大作中提到】
: 实际没那么多,大部分不转车。考虑现实情况,短途也不少。你一张票平均多少站,每
: 次出票平均几张要定义好。

n*****t
发帖数: 22014
95
这个概率比较靠谱,短途客根本不转,长途的实在没票,到了省会换大巴中巴的人不少

【在 z****e 的大作中提到】
: 平均1.1次最多了
g*****g
发帖数: 34805
96
也行,就10%的要转一次好了。要求不能再低了。至于平均多少站,不知道,都有可能。
反正票卖完就没了,你不用关心。

【在 n*****t 的大作中提到】
: 这个概率比较靠谱,短途客根本不转,长途的实在没票,到了省会换大巴中巴的人不少
a***n
发帖数: 538
97
不明白为什么一定要单机和有锁,用原子操作和rollback不行吗?
L*****e
发帖数: 8347
98
还是给出平均转车次数的要求比较好,5m请求全部转一次车,和只有5万转一次车,差
别很大。。。

★ 发自iPhone App: ChineseWeb 8.2.2

【在 g*****g 的大作中提到】
: 我没平均,反正我提出最多转车一次。很多人实际上要转2,3次车。
z****e
发帖数: 54598
99
1)平均一个人转车不得超过1.1次
2)每个人转车上限是2次,也就是一个人一趟
最多出三张票,再多民工肯定不干
3)然后不能出绕太远的路,比如北京到上海
不能先去广州再到上海
这样大多数人直接放弃了
也就是最终路程总和不得超过最短路径的1.2倍
很reasonable吧?

【在 n*****t 的大作中提到】
: 这个概率比较靠谱,短途客根本不转,长途的实在没票,到了省会换大巴中巴的人不少
L*****e
发帖数: 8347
100
比较resonable。。。

★ 发自iPhone App: ChineseWeb 8.2.2

【在 z****e 的大作中提到】
: 1)平均一个人转车不得超过1.1次
: 2)每个人转车上限是2次,也就是一个人一趟
: 最多出三张票,再多民工肯定不干
: 3)然后不能出绕太远的路,比如北京到上海
: 不能先去广州再到上海
: 这样大多数人直接放弃了
: 也就是最终路程总和不得超过最短路径的1.2倍
: 很reasonable吧?

相关主题
大家都买过机票吧每秒500万
老魏的全国一盘棋我来提个方案,大家看合理不合理
联票问题是非常简单的问题搞技术的,要有起码的是非观念 by 老魏
进入Programming版参与讨论
n*****t
发帖数: 22014
101
平均多少站当然有不同。一天 1000 次,每车 20 站,1000 座位,售出 5M 张,平均
每张票是 4 站。你不算这个,一下把票跑没了,哪还有测 500 万。另外,你这是光出
票不用查询的?

能。

【在 g*****g 的大作中提到】
: 也行,就10%的要转一次好了。要求不能再低了。至于平均多少站,不知道,都有可能。
: 反正票卖完就没了,你不用关心。

g*****g
发帖数: 34805
102
平均10%好了,不过你别忘了联票的用户下单比较慢,并不是匀速过来的。最多每秒20%
好了。

【在 L*****e 的大作中提到】
: 还是给出平均转车次数的要求比较好,5m请求全部转一次车,和只有5万转一次车,差
: 别很大。。。
:
: ★ 发自iPhone App: ChineseWeb 8.2.2

g*****g
发帖数: 34805
103
不管呀,都出完了你把另外的请求都说没票就是。反正不能有错票重票,不能有票不出。

【在 n*****t 的大作中提到】
: 平均多少站当然有不同。一天 1000 次,每车 20 站,1000 座位,售出 5M 张,平均
: 每张票是 4 站。你不算这个,一下把票跑没了,哪还有测 500 万。另外,你这是光出
: 票不用查询的?
:
: 能。

n*****t
发帖数: 22014
104
车次是民工自己选的,所以问题 3 不存在

【在 z****e 的大作中提到】
: 1)平均一个人转车不得超过1.1次
: 2)每个人转车上限是2次,也就是一个人一趟
: 最多出三张票,再多民工肯定不干
: 3)然后不能出绕太远的路,比如北京到上海
: 不能先去广州再到上海
: 这样大多数人直接放弃了
: 也就是最终路程总和不得超过最短路径的1.2倍
: 很reasonable吧?

n*****t
发帖数: 22014
105
你这有没有查询?实际情况是 10+ 次查询才出一张票

出。

【在 g*****g 的大作中提到】
: 不管呀,都出完了你把另外的请求都说没票就是。反正不能有错票重票,不能有票不出。
g*****g
发帖数: 34805
106
就直接下订单,有票出票,没票拒绝就行。一切简化,不为难魏公公。

【在 n*****t 的大作中提到】
: 你这有没有查询?实际情况是 10+ 次查询才出一张票
:
: 出。

z****e
发帖数: 54598
107
这个还是在server side做好
否则客户端未完成的话会不停地发送请求的
压力会暴大
车次一般是民工到售票点去问
服务员说,上海没有了,有到杭州的,然后民工就赶紧买
要不就是北京没有了,有到天津的,就赶紧买
但是说,上海没有了,有到广州的,民工直接砸窗口

【在 n*****t 的大作中提到】
: 车次是民工自己选的,所以问题 3 不存在
n*****t
发帖数: 22014
108
http://tech.qq.com/a/20131206/002220.htm
现在是输入起始站,等级,告诉你哪些直达车有哪类座席。这比较符合实际业务。

【在 z****e 的大作中提到】
: 这个还是在server side做好
: 否则客户端未完成的话会不停地发送请求的
: 压力会暴大
: 车次一般是民工到售票点去问
: 服务员说,上海没有了,有到杭州的,然后民工就赶紧买
: 要不就是北京没有了,有到天津的,就赶紧买
: 但是说,上海没有了,有到广州的,民工直接砸窗口

q*c
发帖数: 9453
109
古德吧已经简化成直接请求车次,而不是车站。
但是要满足一个请求里面有多个车次这种联票情况。
我觉得老魏毫无胜算 ~ 你去哪里找 80gb 带宽 的公共服务器啊。 这个测试要么只能
老魏单机内部测 要么就没法测, 大家显然两者都不能接受,

【在 L*****e 的大作中提到】
: spec还是要明确一下,如果手工给出联票途径,比如说北京到上海,上海到广州,这算
: 两个请求还是一个请求?如果这算一个请求,那么要给出平均转车次数是多少,否则,
: 5m请求里每个转20次车。。。
:
: ★ 发自iPhone App: ChineseWeb 8.2.2

n*****t
发帖数: 22014
110
另外,查询其实负荷很低,只读不锁,甚至出错问题都不大,前一秒有票后一秒没票很
正常,12306 不告诉你余票多少张,商务席除外

【在 z****e 的大作中提到】
: 这个还是在server side做好
: 否则客户端未完成的话会不停地发送请求的
: 压力会暴大
: 车次一般是民工到售票点去问
: 服务员说,上海没有了,有到杭州的,然后民工就赶紧买
: 要不就是北京没有了,有到天津的,就赶紧买
: 但是说,上海没有了,有到广州的,民工直接砸窗口

相关主题
搞技术的,要有起码的是非观念 by 老魏好多人害怕锁
12306哪里有什么死锁问题!古德霸放个带细节设计的方案吧
老魏号称100%出票,现在的算法有碎片化问题吧。继续,好虫这个赌约我接了
进入Programming版参与讨论
n*****t
发帖数: 22014
111
用 tcpip 每个请求只要几个字节,带宽压力倒不大了

【在 q*c 的大作中提到】
: 古德吧已经简化成直接请求车次,而不是车站。
: 但是要满足一个请求里面有多个车次这种联票情况。
: 我觉得老魏毫无胜算 ~ 你去哪里找 80gb 带宽 的公共服务器啊。 这个测试要么只能
: 老魏单机内部测 要么就没法测, 大家显然两者都不能接受,

L*****e
发帖数: 8347
112
如果瓶颈在网络带宽那儿,不算老魏方案的责任吧?争论还是在锁和写上。。。

★ 发自iPhone App: ChineseWeb 8.2.2

【在 n*****t 的大作中提到】
: 用 tcpip 每个请求只要几个字节,带宽压力倒不大了
L*****e
发帖数: 8347
113
spec也应该明确一下查询和出票的比例,出票的峰值最高为多少,还是说5m请求全是出
票?

★ 发自iPhone App: ChineseWeb 8.2.2

【在 n*****t 的大作中提到】
: 用 tcpip 每个请求只要几个字节,带宽压力倒不大了
z****e
发帖数: 54598
114
只读不锁都不是问题
问题在于,500w并发,你怎么可能只读不锁
500w/s,平均过去1/5,000,000 s一个req
只有两个cpu,算你十个core了
那也要50w分之一处理一个req
你觉得这种cpu好弄么?

【在 n*****t 的大作中提到】
: 另外,查询其实负荷很低,只读不锁,甚至出错问题都不大,前一秒有票后一秒没票很
: 正常,12306 不告诉你余票多少张,商务席除外

n*****t
发帖数: 22014
115
我认为 3 次请求有一个出票就算很多了,每秒处理 1M 次请求压力不大,老魏比我狠
多了,呵呵

【在 L*****e 的大作中提到】
: spec也应该明确一下查询和出票的比例,出票的峰值最高为多少,还是说5m请求全是出
: 票?
:
: ★ 发自iPhone App: ChineseWeb 8.2.2

n*****t
发帖数: 22014
116
我没把握,我认为可行的是每秒处理 1M 个数据包,其中 1/3 需要写,老魏对硬件研
究比较深,等着看他的方案吧
纯计算包括写 SSD,我觉得不是完全不可能

【在 z****e 的大作中提到】
: 只读不锁都不是问题
: 问题在于,500w并发,你怎么可能只读不锁
: 500w/s,平均过去1/5,000,000 s一个req
: 只有两个cpu,算你十个core了
: 那也要50w分之一处理一个req
: 你觉得这种cpu好弄么?

z****e
发帖数: 54598
117
他可是说过一点,他不挑硬件的
我不知道其他人怎么理解这个说法的
但是我理解是随便一台机器就行
当然用pc肯定是刁难,那就随便一台server吧
如果不挑机器的话,cloud上instance正好
因为cloud上没有太多机器可以挑,所以一个instance应该够用
大不了内存爆一点,用不了几个钱的

【在 n*****t 的大作中提到】
: 我没把握,我认为可行的是每秒处理 1M 个数据包,其中 1/3 需要写,老魏对硬件研
: 究比较深,等着看他的方案吧
: 纯计算包括写 SSD,我觉得不是完全不可能

z****e
发帖数: 54598
118
干脆就放cloud上,一个单独的instance
然后其他所有的instance往这一个instance发送请求
cloud内网应该还好

【在 q*c 的大作中提到】
: 古德吧已经简化成直接请求车次,而不是车站。
: 但是要满足一个请求里面有多个车次这种联票情况。
: 我觉得老魏毫无胜算 ~ 你去哪里找 80gb 带宽 的公共服务器啊。 这个测试要么只能
: 老魏单机内部测 要么就没法测, 大家显然两者都不能接受,

l*****9
发帖数: 9501
119
都放在客户端,怎么强耦合,怎么避免重票?

4

【在 n*****t 的大作中提到】
: 不用起数据库的,没必要。5M 票,切成 20 段,也就 100M 的寻址。一个 request 4
: bytes 标示,我全在 memory 里处理,直接拿 24 bit map 到我的 array,剩下就是
: lock/write/unlock 了。
: 请求的编码、出票都放在 client,谁先死还不一定呢,LOL

n*****t
发帖数: 22014
120
中心节点处理冲突的部分,也就是重票问题,具体就是每张票每个区间的锁票,一张票
过 5 个站就锁 5 个 byte,一旦锁定了,前段就可以慢慢处理了

【在 l*****9 的大作中提到】
: 都放在客户端,怎么强耦合,怎么避免重票?
:
: 4

相关主题
魏公公的来信100%出票还真没在赌约里。
在讨论12306前还有一个问题
古德霸啊古德霸,不打你脸是不行了100%和必需出票属于没戏了
进入Programming版参与讨论
z****e
发帖数: 54598
121
我现在有极强烈的预感
如果不挑硬件,那也就是一个instance的话
500w/s光查恐怕都撑不住
一个cpu估计是不够的
如果多个cpu,这里有调度的问题
很容易会死锁
n*****t
发帖数: 22014
122
刚在我的破笔记本上 virtualpc 测了一下,HW SPEC 我就不贴了,丢人 。。。
100 x 5M read byte, 3 secs,所以,先别下结论

【在 z****e 的大作中提到】
: 我现在有极强烈的预感
: 如果不挑硬件,那也就是一个instance的话
: 500w/s光查恐怕都撑不住
: 一个cpu估计是不够的
: 如果多个cpu,这里有调度的问题
: 很容易会死锁

z****e
发帖数: 54598
123
老魏有一个小trick就是把很多需求都给刻意简化了
以至于一旦你提出一些稍微复杂一点的需求
他马上就推给其他部分去做,按照500w这种量
稍微加多一点东西,很容易超时,假设只读真能做到的话

【在 n*****t 的大作中提到】
: 刚在我的破笔记本上 virtualpc 测了一下,HW SPEC 我就不贴了,丢人 。。。
: 100 x 5M read byte, 3 secs,所以,先别下结论

l*****9
发帖数: 9501
124
你没有搞懂要求:除了接受客户订票参数的界面,所有逻辑全部需要魏老师的应用实现

【在 n*****t 的大作中提到】
: 中心节点处理冲突的部分,也就是重票问题,具体就是每张票每个区间的锁票,一张票
: 过 5 个站就锁 5 个 byte,一旦锁定了,前段就可以慢慢处理了

t*****z
发帖数: 812
125
客户端装个java程序要求不是很高啊

【在 l*****9 的大作中提到】
: 你没有搞懂要求:除了接受客户订票参数的界面,所有逻辑全部需要魏老师的应用实现
B*****g
发帖数: 34098
126
哥出100刀能把名字加上去吗?

github

【在 g*****g 的大作中提到】
: 光说不练的就是太监。
: 就按你提的要求,全国一盘棋。每天1000车次,每车次简化就20段,每车三种票,卧铺
: ,硬座,站票,每种1000张。上下铺什么的我就不跟你计较了。
: 你负责写服务器,给个web service的接口,我负责写500万次/秒并发的客户端。你
: server怎么实现的,花多少钱,用什么架构我都不管。你装逼2万刀的机器我也不跟你
: 计较。你愿意内存数据库也行,你那什么三数据中心的光纤备份也可以省了。
: 反正不能重票,错票。不能有票不出。高峰的时候必须
: 能对99.9%的请求在30秒内作出响应并出票。你不放心我可以把client代码放上github
: 让第三
: 方验证。

t*****z
发帖数: 812
127
不知道500万/秒是怎么来的
全国10亿人
1/5工作年龄 2亿
1/10外出工作 2千万
1/2 火车回家 1千万
10天春运 1百万/天
10小时订票 10万/小时
3600秒 30/秒
即使给个安全系数100,3000/秒也够了。 每个ip最多1次查询/秒

【在 t*****z 的大作中提到】
: 客户端装个java程序要求不是很高啊
l*****9
发帖数: 9501
128
你想在客户端实现哪些逻辑?很多客户用手机上网

【在 t*****z 的大作中提到】
: 客户端装个java程序要求不是很高啊
t*****z
发帖数: 812
129
就是用S/C,别整http了

【在 l*****9 的大作中提到】
: 你想在客户端实现哪些逻辑?很多客户用手机上网
n****6
发帖数: 570
130
查询路径和出票可以分开,路径搜索专用服务器就可以了。用户先确定路径车次查询就
可以了。觉得只要查询出票就行了。路径分析可以分开。并且路径车次决定要用户参与
的。所以老魏只要服务器能查询票情况出票就行了。路径分析不用做。这样比较公平。
路径专用服务器就可以了。

【在 l*****9 的大作中提到】
: 你没有搞懂要求:除了接受客户订票参数的界面,所有逻辑全部需要魏老师的应用实现
相关主题
不是古德霸都已经说同意赌博了么?怎么又开始扯淡了?老魏的全国一盘棋
老魏,我给你总结一下联票问题是非常简单的问题
大家都买过机票吧每秒500万
进入Programming版参与讨论
s****u
发帖数: 1433
131
硬件瓶颈是不可能跳过的。比你笔记本强300倍的单机,
也只能进行对每个请求进行1万次读写。
用的语言越高级,OVERHEAD越多。
我觉得不靠普,但是天才是存在的,呵呵。

【在 n*****t 的大作中提到】
: 刚在我的破笔记本上 virtualpc 测了一下,HW SPEC 我就不贴了,丢人 。。。
: 100 x 5M read byte, 3 secs,所以,先别下结论

l*****9
发帖数: 9501
132
http request不需要 魏应用直接处理,所以古德霸让魏老师给出web service
interface

【在 t*****z 的大作中提到】
: 就是用S/C,别整http了
l*****9
发帖数: 9501
133
没有要求做路径分析,是zhaoce思维发散了

【在 n****6 的大作中提到】
: 查询路径和出票可以分开,路径搜索专用服务器就可以了。用户先确定路径车次查询就
: 可以了。觉得只要查询出票就行了。路径分析可以分开。并且路径车次决定要用户参与
: 的。所以老魏只要服务器能查询票情况出票就行了。路径分析不用做。这样比较公平。
: 路径专用服务器就可以了。

n****6
发帖数: 570
134
采用路径服务器后,车次耦合不厉害数据库可以分开。就是可能用户选择的路径无票。
但客户可以选新片票。查询就是了。并且和传统方式比较像。

【在 s****u 的大作中提到】
: 硬件瓶颈是不可能跳过的。比你笔记本强300倍的单机,
: 也只能进行对每个请求进行1万次读写。
: 用的语言越高级,OVERHEAD越多。
: 我觉得不靠普,但是天才是存在的,呵呵。

s****u
发帖数: 1433
135
呵呵,查询就是了?
你随便写个查询程序,编译成机器码,看看
有多少行嘛。

【在 n****6 的大作中提到】
: 采用路径服务器后,车次耦合不厉害数据库可以分开。就是可能用户选择的路径无票。
: 但客户可以选新片票。查询就是了。并且和传统方式比较像。

n****6
发帖数: 570
136
其实老魏只要有个内存数据库,包括所有车次铺位信息。能查询能加锁能出票每秒钟
500万次。不管什么格式觉得就可以了。只要单机CPU个数内存合理就行了。

【在 n****6 的大作中提到】
: 采用路径服务器后,车次耦合不厉害数据库可以分开。就是可能用户选择的路径无票。
: 但客户可以选新片票。查询就是了。并且和传统方式比较像。

L*****e
发帖数: 8347
137
朋友,不是那么计算的。。。
在25日召开的2014年全国春运电视电话会议上,国家发改委副主任连维良透露,
2014年春运客流量预计将达36.2亿人次,比2013年春运增加2亿人次,再创客流新高。
客流叠加、天气恶劣,春运任务艰巨
2014年春运将于1月16日开始,2月24日结束,为期40天。据预测,全国道路客运量
将超过32亿人次,同比增长5.8%左右;全国水路客运量将达4300万人次,同比增长1.1%
;铁路旅客发送量预计为2.578亿人次,同比增加7.9%;民航旅客运输量约4200万人次
,同比增加10%。
“2014年春节相对较早,节前民工流、学生流、探亲流相互叠加,春运高峰明显,
且中短途运输需求高位增长,运输压力较大。”交通运输部副部长冯正霖说。此外,根
据气象部门预报,今年春运前期局部地区出现较大降雪、低温雨雪冰冻和雾霾天气概率
较大,因此,2014年春运任务十分艰巨。
冯正霖介绍,为改善春运服务,春运期间,与铁路枢纽相衔接的全国二级以上客运
站将24小时开放候车室,提供免费开水,并加强食品、饮料等生活必需品的储备。
同时,2014年春节假日期间,继续执行小客车收费公路免费通行政策。针对可能导
致的车流急剧增加,道路交通主管部门将完善免费通行措施,做好相关预案,确保道路
通畅。
严控安全隐患,确保春运安全
今年以来,尽管一批新线建成投产,铁路日常运输能力至少比去年增加了4%,但中
国铁路总公司副总经理胡亚东表示,“铁路总体上仍难以满足春运高峰客流需求”。
为满足旅客出行需要,铁路部门节前将开行2667对列车,同比增加157对;节后将
开行2677对,同比增加139对。部分高铁将在凌晨增开“红眼”动车组列车。
中国民用航空局副局长夏兴华介绍,为应对春运客流,今年民航国内加班数将达到
1.2万个往返航班。目前,民航局已受理春运期间两岸加班428班,国际加班802班,重
点集中在北京、上海、广州和西南、东北、海南等地区以及泰国、韩国和马来西亚等周
边国家。
据了解到,近5年,春运期间全国共发生事故9.6万起,死亡2.8万人。为确保春运
安全,连维良要求各级、各部门将最严重的十大隐患层层上报上一级安全生产监管部门
、交通运输综合部门、公安部门和春运办备案,要将短期内难以消除的关系公共利益的
安全隐患,通过网络向社会公示,接受社会对治理进展的监督。“对隐患失于排查、排
查出来失于整改的,要从严问责。”

★ 发自iPhone App: ChineseWeb 8.2.2

【在 t*****z 的大作中提到】
: 不知道500万/秒是怎么来的
: 全国10亿人
: 1/5工作年龄 2亿
: 1/10外出工作 2千万
: 1/2 火车回家 1千万
: 10天春运 1百万/天
: 10小时订票 10万/小时
: 3600秒 30/秒
: 即使给个安全系数100,3000/秒也够了。 每个ip最多1次查询/秒

L*****e
发帖数: 8347
138
2014年春运,铁路客流量为2.578亿。而且订票不是在整个春运期间平均分配的,是要
集中抢票的。。。

★ 发自iPhone App: ChineseWeb 8.2.2

【在 t*****z 的大作中提到】
: 不知道500万/秒是怎么来的
: 全国10亿人
: 1/5工作年龄 2亿
: 1/10外出工作 2千万
: 1/2 火车回家 1千万
: 10天春运 1百万/天
: 10小时订票 10万/小时
: 3600秒 30/秒
: 即使给个安全系数100,3000/秒也够了。 每个ip最多1次查询/秒

g*****g
发帖数: 34805
139
太监立马现行了,合理的要求,最后太监就会实现个 5m 的计数器,剩下的都不是核心
,没见过这么装逼不要脸的。
q*c
发帖数: 9453
140
你这怎么比?你这是 总线 内部 bus 带宽,一旦要 io, 嘿嘿 网络通信不要计算啊。
而且订票是只给车次,每个车次 3种票,1000张同类型的票,20 区段。。你设多少
锁?每个区段一个,倒是不用搜索了,但是 一个人交易,上锁,下面99。9% 的交易都
有失败,哪怕那段还有票。
要是每个座位一个说,嘿嘿,你怎么知道哪个座位空着可以锁?要搜索,搜索1000个座
位。。。而且搜索完了去锁的时候可能又失败。
中间问题多的很。

【在 n*****t 的大作中提到】
: 刚在我的破笔记本上 virtualpc 测了一下,HW SPEC 我就不贴了,丢人 。。。
: 100 x 5M read byte, 3 secs,所以,先别下结论

相关主题
每秒500万12306哪里有什么死锁问题!
我来提个方案,大家看合理不合理老魏号称100%出票,现在的算法有碎片化问题吧。
搞技术的,要有起码的是非观念 by 老魏好多人害怕锁
进入Programming版参与讨论
g*****g
发帖数: 34805
141
昨天到现在,没有哪个觉得我这要求不合理。什么最短路径,我主动帮太监简化了,换
车,我把次数也降到最少,太监就是不敢接。
q*c
发帖数: 9453
142
这才是高大上思维模式。

【在 B*****g 的大作中提到】
: 哥出100刀能把名字加上去吗?
:
: github

q*c
发帖数: 9453
143
我有点明白了,估计你说的100万请求是,我满足了10000个请求,剩下的直接失败?哪
怕明明有票,但是因为锁冲撞,直接给失败,对吧?
要是这样,那还不如分段放人后台单线程

【在 n*****t 的大作中提到】
: 刚在我的破笔记本上 virtualpc 测了一下,HW SPEC 我就不贴了,丢人 。。。
: 100 x 5M read byte, 3 secs,所以,先别下结论

g*****g
发帖数: 34805
144
没用,太监就是个光说不练的。

【在 q*c 的大作中提到】
: 这才是高大上思维模式。
g*****g
发帖数: 34805
145
我老早就明白了,跟他说建模就错了。

【在 q*c 的大作中提到】
: 我有点明白了,估计你说的100万请求是,我满足了10000个请求,剩下的直接失败?哪
: 怕明明有票,但是因为锁冲撞,直接给失败,对吧?
: 要是这样,那还不如分段放人后台单线程

q*c
发帖数: 9453
146
这问题要求我再帮助清晰一下,就是每天 6000万张可能的票(每战都可能上下),实
际当然要少。现在我比如 5000万个计算好的请求摆在这里,互相覆盖/联票但是没有溢
出,你这系统花大概10秒,得把99。9%的票顺利出票。
不能出了5万张,剩下因为锁冲突或者等待时间超时全失败,剩下4995万张空票等用户
反复试验。

【在 q*c 的大作中提到】
: 我有点明白了,估计你说的100万请求是,我满足了10000个请求,剩下的直接失败?哪
: 怕明明有票,但是因为锁冲撞,直接给失败,对吧?
: 要是这样,那还不如分段放人后台单线程

g*****g
发帖数: 34805
147
没啥好看了,太监口口声声全国一盘棋,现在服软说只能做一条线,20段。
g*****g
发帖数: 34805
148
太监的艺术大家都见识了,人至贱则无敌。
n*****t
发帖数: 22014
149
不是啊,我相应 1M request 啊,你看我另外一个帖子,稍微详细点的设计
http://www.mitbbs.com/article_t/Programming/31311969.html

【在 q*c 的大作中提到】
: 我有点明白了,估计你说的100万请求是,我满足了10000个请求,剩下的直接失败?哪
: 怕明明有票,但是因为锁冲撞,直接给失败,对吧?
: 要是这样,那还不如分段放人后台单线程

S*A
发帖数: 7142
150
赞一个,支持实事求是验证。
我觉得用代码说话是最牛的。
整天嘴皮子吵架没意思。
尤其是可以 github 看源代码非常赞。
我注意到 Teacher Wei 好像一个回复也没有啊。
看样子我要压 500 伪币Teacher Wei 要输了。
其实无所谓输赢,有严格点的测试是非常好的事情。
有代码看是造福大家。
写底层的大流量client 我也可以帮忙写,不管处理就是
生成流量应该还是比较简单的。如何处理就麻烦些。
不管怎么说,赞一个 good 接这个赌局。大家可以有
代码看。
相关主题
古德霸放个带细节设计的方案吧在讨论12306前
继续,好虫这个赌约我接了古德霸啊古德霸,不打你脸是不行了
魏公公的来信100%出票还真没在赌约里。
进入Programming版参与讨论
a***e
发帖数: 27968
151
man, last time i checked was 1M, now is 5M?
but what you bet is really bullshit, suicide ID? you are joking, right?
put $100K on table is more like it.

github

【在 g*****g 的大作中提到】
: 光说不练的就是太监。
: 就按你提的要求,全国一盘棋。每天1000车次,每车次简化就20段,每车三种票,卧铺
: ,硬座,站票,每种1000张。上下铺什么的我就不跟你计较了。
: 你负责写服务器,给个web service的接口,我负责写500万次/秒并发的客户端。你
: server怎么实现的,花多少钱,用什么架构我都不管。你装逼2万刀的机器我也不跟你
: 计较。你愿意内存数据库也行,你那什么三数据中心的光纤备份也可以省了。
: 反正不能重票,错票。不能有票不出。高峰的时候必须
: 能对99.9%的请求在30秒内作出响应并出票。你不放心我可以把client代码放上github
: 让第三
: 方验证。

g*****g
发帖数: 34805
152
5M是魏公公自己的要求,自己看贴,到处都是。自杀ID也是。

【在 a***e 的大作中提到】
: man, last time i checked was 1M, now is 5M?
: but what you bet is really bullshit, suicide ID? you are joking, right?
: put $100K on table is more like it.
:
: github

c**********0
发帖数: 17
153
老魏输定了。单机10万都很难。

【在 i**i 的大作中提到】
: 我赌老魏输,500伪币
c*******r
发帖数: 870
154
魏老师怎么不出现了?

【在 c**********0 的大作中提到】
: 老魏输定了。单机10万都很难。
g*****g
发帖数: 34805
155
老魏承认做不出来了,这要求写得清清楚楚不能换座。弄半天计数器,最后连基本要求
都不满足也有脸说。
i**i
发帖数: 1500
156
看看帖子的题目就知道为什么了.
PA没意思.

【在 c*******r 的大作中提到】
: 魏老师怎么不出现了?
g*****g
发帖数: 34805
157
傻逼又恼羞成怒了,基本要求没满足,就是 卖全宇宙的票有蛋用。
J*****n
发帖数: 4859
158
Where is TeacherWei? Lz should msg him, since he maybe ignore this post at
very begining.
g*****g
发帖数: 34805
159
顶一个,太监装看不见。
写了N天的要求,你满足不了你就说满足不了。吹牛逼宇宙第一强实时,到头来要换座。
你装逼,大家抗包换车厢。人不要脸到这份上没啥可说了。
1 (共1页)
进入Programming版参与讨论
相关主题
还有一个问题我来提个方案,大家看合理不合理
100%和必需出票属于没戏了搞技术的,要有起码的是非观念 by 老魏
不是古德霸都已经说同意赌博了么?怎么又开始扯淡了?12306哪里有什么死锁问题!
老魏,我给你总结一下老魏号称100%出票,现在的算法有碎片化问题吧。
大家都买过机票吧好多人害怕锁
老魏的全国一盘棋古德霸放个带细节设计的方案吧
联票问题是非常简单的问题继续,好虫这个赌约我接了
每秒500万魏公公的来信
相关话题的讨论汇总
话题: 老魏话题: 车次话题: 魏公公话题: 请求话题: 500