由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - 12306 妙杀
相关主题
f design question 求讨论一个基本的string问题
一道系统设计:24小时内点赞最多的500个tweets紧张了,刚刚经历个没有准备的电面
FB设计题求教。整理下一些遇到的面试题
请教system design面经的思路Bitmap是怎么回事啊?
fb设计题请教SQL Query 面试题
话说为啥FB一聊天软件要那么多码工?攒人品,有三个mid-office quant positions (2 equities, 1 credit)
讨论一下12306的架构?网投简历真的一点用都没有吗?
锁票是12306 的重要组成部分对求职网站和工具书的一个总结---欢迎补充
相关话题的讨论汇总
话题: 车次话题: 12306话题: server话题: 锁票话题: 联票
进入JobHunting版参与讨论
1 (共1页)
s**x
发帖数: 7506
1
昨晚又想到一个trick, 直接秒杀 这种high concurrency but tiny data set 系统。
就是合理的分流加aggregation.
分流可以按车次,前台 10000 web server, 后台 10000台server 自带任何一种数据库
就好了,一台server 负责几个车次。
Each web server aggregate all the requests to the same 车次 in one second,
后台能处理 10000 QPS 就行了。
貌似连多级cache,mem only db 之类的都是杀鸡用牛刀。
联票web server 并行锁票。
支付额外sever 异步处理。
Fault tolerance 多种方案。
Simple, easy and fast, 系统QPS 100m.
估计三个普通码工三个月轻松写完。
y******u
发帖数: 804
2
进一步优化:针对火车票这种巨大需求,一个车次的所有区间票都是可以提前计划好或
是每隔一段时间重分配。也就是,一个车次包含各种区间票的商品,每个商品有库存数
。写数据时,不同的票之间就解耦了。
细思极恐~“魏老师的计数器的灵魂在飘荡....”

【在 s**x 的大作中提到】
: 昨晚又想到一个trick, 直接秒杀 这种high concurrency but tiny data set 系统。
: 就是合理的分流加aggregation.
: 分流可以按车次,前台 10000 web server, 后台 10000台server 自带任何一种数据库
: 就好了,一台server 负责几个车次。
: Each web server aggregate all the requests to the same 车次 in one second,
: 后台能处理 10000 QPS 就行了。
: 貌似连多级cache,mem only db 之类的都是杀鸡用牛刀。
: 联票web server 并行锁票。
: 支付额外sever 异步处理。
: Fault tolerance 多种方案。

s**x
发帖数: 7506
3

那些都是细节,我发现因为可以aggregate 这个问题就变得非常简单了,魏老师的计数
器成了牛刀杀鸡了。
为什么aggregate? 因为数据量太小了,一个车次的车票,更新一个跟更新一万个一次
大部分时间都在disk io 上,没有区别。

【在 y******u 的大作中提到】
: 进一步优化:针对火车票这种巨大需求,一个车次的所有区间票都是可以提前计划好或
: 是每隔一段时间重分配。也就是,一个车次包含各种区间票的商品,每个商品有库存数
: 。写数据时,不同的票之间就解耦了。
: 细思极恐~“魏老师的计数器的灵魂在飘荡....”

y******u
发帖数: 804
4
sharding规模以上公司都在做,不是黑科技

【在 s**x 的大作中提到】
:
: 那些都是细节,我发现因为可以aggregate 这个问题就变得非常简单了,魏老师的计数
: 器成了牛刀杀鸡了。
: 为什么aggregate? 因为数据量太小了,一个车次的车票,更新一个跟更新一万个一次
: 大部分时间都在disk io 上,没有区别。

m********s
发帖数: 55301
5
楼主不如建议每一天的每一个车次都有一个单独的有100台服务器的网站来处理。
就没事儿了。
比如北京至上海的G101在2016年1月17日的车票请去: http://G101-2016-01-17.com.cn购买。
s**x
发帖数: 7506
6

我靠,你不会认为Google.com facebook.com 就一台服务器吧?

【在 m********s 的大作中提到】
: 楼主不如建议每一天的每一个车次都有一个单独的有100台服务器的网站来处理。
: 就没事儿了。
: 比如北京至上海的G101在2016年1月17日的车票请去: http://G101-2016-01-17.com.cn购买。

s**x
发帖数: 7506
7

这个当然,我的建议里sharding 就是按车次。

【在 y******u 的大作中提到】
: sharding规模以上公司都在做,不是黑科技
m********s
发帖数: 55301
8
我就是顺着你的思路去说的。
每一个单独独立的网站只负责某一天的某个车次的订票、售票服务,就不容易被大流量
把全部车次都搞瘫痪了。
比如,你要订北京北去往八达岭的火车,这是趟无论什么时候都坐不满的车次。你却不
得不跟几千万订热门车次的旅客在同一个网站买票,很不科学。

【在 s**x 的大作中提到】
:
: 这个当然,我的建议里sharding 就是按车次。

g*****g
发帖数: 34805
9
因为有联程票呗,没联程票是很简单。这种把需求阉割了意淫解决方案都是没有意义的
s**x
发帖数: 7506
10

也是一种方法,不过你这个需要二级分流。app 总是要先talk to tier 1 servers,
then talks to the servers you mentioned.

【在 m********s 的大作中提到】
: 我就是顺着你的思路去说的。
: 每一个单独独立的网站只负责某一天的某个车次的订票、售票服务,就不容易被大流量
: 把全部车次都搞瘫痪了。
: 比如,你要订北京北去往八达岭的火车,这是趟无论什么时候都坐不满的车次。你却不
: 得不跟几千万订热门车次的旅客在同一个网站买票,很不科学。

相关主题
话说为啥FB一聊天软件要那么多码工?一个基本的string问题
讨论一下12306的架构?紧张了,刚刚经历个没有准备的电面
锁票是12306 的重要组成部分整理下一些遇到的面试题
进入JobHunting版参与讨论
s**x
发帖数: 7506
11

一个人买n张联票,n个人买同样的n张票,there is no real difference.
The only difference is that you want the first case all or none.
No advantage for 联票,no disadvantage as well. 并行锁票就可以了。

【在 g*****g 的大作中提到】
: 因为有联程票呗,没联程票是很简单。这种把需求阉割了意淫解决方案都是没有意义的
: 。

t****n
发帖数: 263
12
“并行锁票就可以了”? 你还真是一点clue都没有啊!大学都没上过就能“解决”哥
德巴赫猜想的大概就张你这样吧?

【在 s**x 的大作中提到】
:
: 一个人买n张联票,n个人买同样的n张票,there is no real difference.
: The only difference is that you want the first case all or none.
: No advantage for 联票,no disadvantage as well. 并行锁票就可以了。

f*******s
发帖数: 182
g*****g
发帖数: 34805
14
I服了U,又一个连transaction的概念都没有就要做12306的。

【在 s**x 的大作中提到】
:
: 一个人买n张联票,n个人买同样的n张票,there is no real difference.
: The only difference is that you want the first case all or none.
: No advantage for 联票,no disadvantage as well. 并行锁票就可以了。

s**x
发帖数: 7506
15

看了五分钟,看到
”我并非信口开河,根据铁道部专家的说明:这几天,平均一天下单100万,所以,处
理1000万的用户需要十天。这个计算可能有点简单了,我只是想说,在这样低负载的系
统下用排队可能都不能解决业务问题)"
又看到,"40 台机器搞定”
我靠,这水平彻底跪了。

【在 f*******s 的大作中提到】
: 这有一篇blog文章
: http://www.habadog.com/2014/12/16/make-12306-better-again/

s**x
发帖数: 7506
16

Transaction 是什么东东? Say say 看。你定义的transaction 是必须全国人民大排
队?

【在 g*****g 的大作中提到】
: I服了U,又一个连transaction的概念都没有就要做12306的。
g*****g
发帖数: 34805
17
我老不是来做TA的,对数据库基本概念都没有的我老不奉陪了。

【在 s**x 的大作中提到】
:
: Transaction 是什么东东? Say say 看。你定义的transaction 是必须全国人民大排
: 队?

s**x
发帖数: 7506
18

多谢!建议你还是先复习一下什么叫数据库吧,搞了一辈子数据库的人还真不一定给出
个正确的定义来。

【在 g*****g 的大作中提到】
: 我老不是来做TA的,对数据库基本概念都没有的我老不奉陪了。
s**x
发帖数: 7506
19

你这种菜鸟眼里的歌德巴赫在真正的码工眼里都是妙杀。

【在 t****n 的大作中提到】
: “并行锁票就可以了”? 你还真是一点clue都没有啊!大学都没上过就能“解决”哥
: 德巴赫猜想的大概就张你这样吧?

t****n
发帖数: 263
20
是啊,您多牛啊!连“read-write-lock” 都知道。啧啧,别人只有滔滔江水的份啊
!当然像transaction这么初级的东西您这样的”真正的码工“是不屑知道的。歌德巴
赫?您靠意淫就能解决了。
我错了,不该和你这样的弱智妄人浪费时间。你接着撸吧。

【在 s**x 的大作中提到】
:
: 你这种菜鸟眼里的歌德巴赫在真正的码工眼里都是妙杀。

相关主题
Bitmap是怎么回事啊?网投简历真的一点用都没有吗?
请教SQL Query 面试题对求职网站和工具书的一个总结---欢迎补充
攒人品,有三个mid-office quant positions (2 equities, 1 credit)推荐几个求职网站
进入JobHunting版参与讨论
p*****y
发帖数: 529
21
你看看那个前阿里工程师的文章就明白了。 所谓的“数据库“其实是各local铁路局的
legacy system, 锁张跨区的票要call几个铁路局的legacy system。
所以兄弟, 喷之前有点background不是什么坏事。

【在 s**x 的大作中提到】
:
: 你这种菜鸟眼里的歌德巴赫在真正的码工眼里都是妙杀。

f*******s
发帖数: 182
22
那篇貌似是作者反对的吧 你看清了么?

【在 s**x 的大作中提到】
:
: 你这种菜鸟眼里的歌德巴赫在真正的码工眼里都是妙杀。

s**x
发帖数: 7506
23

后来查了查,好像你是对的。

【在 p*****y 的大作中提到】
: 你看看那个前阿里工程师的文章就明白了。 所谓的“数据库“其实是各local铁路局的
: legacy system, 锁张跨区的票要call几个铁路局的legacy system。
: 所以兄弟, 喷之前有点background不是什么坏事。

s**x
发帖数: 7506
24

没仔细看,因为技术含量基本为零。

【在 f*******s 的大作中提到】
: 那篇貌似是作者反对的吧 你看清了么?
1 (共1页)
进入JobHunting版参与讨论
相关主题
对求职网站和工具书的一个总结---欢迎补充fb设计题
推荐几个求职网站话说为啥FB一聊天软件要那么多码工?
Linkedin 到底应该怎么利用讨论一下12306的架构?
推荐几个求职和公司研究网站锁票是12306 的重要组成部分
f design question 求讨论一个基本的string问题
一道系统设计:24小时内点赞最多的500个tweets紧张了,刚刚经历个没有准备的电面
FB设计题求教。整理下一些遇到的面试题
请教system design面经的思路Bitmap是怎么回事啊?
相关话题的讨论汇总
话题: 车次话题: 12306话题: server话题: 锁票话题: 联票