由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - 有没有人讨论下leetcode用了什么技术,可以有哪些改进?
相关主题
Samsung Research America Server组内退面试准备和经验
zhaoce大牛说说HornetQ vs kafka怎么样?2015年硅谷最火的高科技创业公司都有哪些?
interview design question: how to design a high through put queue systemUber总部Big Data / 大数据组急招engineers
贡献个系统设计题兼讨论看了一下Scala文档 其实就是一个小号的Java toy
过去n小时的top search请问个公司选组的问题:Hbase还是Kafka??
秒杀设计题内部推荐BigData工作机会
祝贺peking2升级成Staff & Tech LeadGoogle team match求助
到底怎么设计FB的news feed?Comcast Sunnyvale Office 内推 SE, QA, DevOp, Fresh Graduat
相关话题的讨论汇总
话题: submit话题: leetcode话题: submission话题: check话题: 讨论
进入JobHunting版参与讨论
1 (共1页)
c*******e
发帖数: 621
1
刚才leetcode又当了,正好来讨论下如果这是一道面试题,大家怎么回答?
我先抛砖引玉一下
leetcode oj现在host在www.linode.com
我猜是 单个 6 core 或 4 core服务器,因为这家公司这两种性价比比较高
leetcode 每题有200k左右的submission在3年左右的时间里
所以每分钟的submission大概平均是200k*150题/3/365/24/60=19
以高峰200 submission计
60/(200/6)=2s 每个submission只分到2s左右的时间,我猜勉强够用吧(很粗略的估计)
用的是nginx server,后台是啥就不知道了
一旦你submit,就会得到一个submit id,每隔几秒check一下是不是有结果,直到有结
果为止
这里就有一个疑问?为啥不是submit后直接等结果?而是先拿到submit id,再不停
check?
有一些open source oj是submit后,php直接调用shell script去编译给结果,不需要
给submit id再check.所以我猜leetcode不是采用这种方式,而是submit只负责submit
,另有一个back end程序定时查最新submit,分配任务,任务结束后更新数据库。
如何scale?
小规模scale,我想把队列分成几份,分发到不同服务器就好
如果是几万人同时submit的程序呢?
有啥现成轮子可用?leetcode现在的设计合理么
大家讨论下?呵呵
l***4
发帖数: 1788
2
关于submit后check
应该是async提交到一个queue

计)

【在 c*******e 的大作中提到】
: 刚才leetcode又当了,正好来讨论下如果这是一道面试题,大家怎么回答?
: 我先抛砖引玉一下
: leetcode oj现在host在www.linode.com
: 我猜是 单个 6 core 或 4 core服务器,因为这家公司这两种性价比比较高
: leetcode 每题有200k左右的submission在3年左右的时间里
: 所以每分钟的submission大概平均是200k*150题/3/365/24/60=19
: 以高峰200 submission计
: 60/(200/6)=2s 每个submission只分到2s左右的时间,我猜勉强够用吧(很粗略的估计)
: 用的是nginx server,后台是啥就不知道了
: 一旦你submit,就会得到一个submit id,每隔几秒check一下是不是有结果,直到有结

g**e
发帖数: 6127
3
这个数学分析要打回去重做
现成的轮子可以用SWF。二爷会告诉你上kafka + cassandra + spark
leetcode这种in memory workflow本地用个queue然后自己写个简单的flow就行了。隔
几秒check结果太土了,现在都reactive programming时代了

计)

【在 c*******e 的大作中提到】
: 刚才leetcode又当了,正好来讨论下如果这是一道面试题,大家怎么回答?
: 我先抛砖引玉一下
: leetcode oj现在host在www.linode.com
: 我猜是 单个 6 core 或 4 core服务器,因为这家公司这两种性价比比较高
: leetcode 每题有200k左右的submission在3年左右的时间里
: 所以每分钟的submission大概平均是200k*150题/3/365/24/60=19
: 以高峰200 submission计
: 60/(200/6)=2s 每个submission只分到2s左右的时间,我猜勉强够用吧(很粗略的估计)
: 用的是nginx server,后台是啥就不知道了
: 一旦你submit,就会得到一个submit id,每隔几秒check一下是不是有结果,直到有结

c*******e
发帖数: 621
4

~~真的碰到设计题,peak怎么估?大牛来个估计?
~SWF是啥?
~spark在这里有啥用?据我所知compiler目前没法很好模拟,judge还是只能老老实实用
gcc和javac之类。难道spark只是用来分配下任务?
~你的意思是自己写个server,维护一个queue,算完了直接返回结果比较好? 那啥现
成的轮子能实现呢?自己写的话,并发更难达到要求吧。现在leetcode我猜是php每几
秒check下database,土是土了点,但现成的nginx,php,database(sql也好,nosql也
好)至少并发没问题啊

【在 g**e 的大作中提到】
: 这个数学分析要打回去重做
: 现成的轮子可以用SWF。二爷会告诉你上kafka + cassandra + spark
: leetcode这种in memory workflow本地用个queue然后自己写个简单的flow就行了。隔
: 几秒check结果太土了,现在都reactive programming时代了
:
: 计)

c*******e
发帖数: 621
5
理论上应该这样
但还是不理解为什么不等到结果出来了直接给结果,而是现在这样反复check
leetcode这样设计的好处是什么?还是额外加重了服务器负担?

【在 l***4 的大作中提到】
: 关于submit后check
: 应该是async提交到一个queue
:
: 计)

z******g
发帖数: 271
6
一个IO基本可以忽略,执行时间纯CPU bound的application想优化latency,除了堆机
器有解?
1 (共1页)
进入JobHunting版参与讨论
相关主题
Comcast Sunnyvale Office 内推 SE, QA, DevOp, Fresh Graduat过去n小时的top search
烙印组太NB了秒杀设计题
大数据方向那种职位最有前途祝贺peking2升级成Staff & Tech Lead
沃尔玛电商搜索大数据组招人到底怎么设计FB的news feed?
Samsung Research America Server组内退面试准备和经验
zhaoce大牛说说HornetQ vs kafka怎么样?2015年硅谷最火的高科技创业公司都有哪些?
interview design question: how to design a high through put queue systemUber总部Big Data / 大数据组急招engineers
贡献个系统设计题兼讨论看了一下Scala文档 其实就是一个小号的Java toy
相关话题的讨论汇总
话题: submit话题: leetcode话题: submission话题: check话题: 讨论