c*****e 发帖数: 3226 | 1 看看c/c++ 人说的dream scalability done in erlang:
I came in with a healthy amount of skepticism since most of my previous high
-performance experience was with C/C++, but after we worked through some of
our bottlenecks (as described in my talk at last year’s Erlang Factory SF),
I came to realize that Erlang was a great fit for what we were doing. We
were achieving scalability goals on our hosts that we only dreamed about at
Yahoo!
2 million tcp connections on a single box
* http://blog.whatsapp.com/index.php/2012/01/1-million-is-so-2011/
* hardware spec: http://blog.whatsapp.com/index.php/2012/01/1-million-is-so-2011/
* http://mirkobonadei.com/interview-with-rick-reed/
* http://highscalability.com/blog/2014/2/26/the-whatsapp-architecture-facebook-bought-for-19-billion.html |
z****e 发帖数: 54598 | |
c*****e 发帖数: 3226 | 3 我的post摆事实讲论据, 你又高屋建瓴的演讲了。
【在 z****e 的大作中提到】 : 现在随便是个语言都上来先揍一顿c++
|
z****e 发帖数: 54598 | 4 那你继续,erlang的fp我再琢磨琢磨
【在 c*****e 的大作中提到】 : 我的post摆事实讲论据, 你又高屋建瓴的演讲了。
|
c***d 发帖数: 996 | 5 erlang做message passing 可以, 做逻辑实在是不太行。
high
of
),
at
【在 c*****e 的大作中提到】 : 看看c/c++ 人说的dream scalability done in erlang: : I came in with a healthy amount of skepticism since most of my previous high : -performance experience was with C/C++, but after we worked through some of : our bottlenecks (as described in my talk at last year’s Erlang Factory SF), : I came to realize that Erlang was a great fit for what we were doing. We : were achieving scalability goals on our hosts that we only dreamed about at : Yahoo! : 2 million tcp connections on a single box : * http://blog.whatsapp.com/index.php/2012/01/1-million-is-so-2011/ : * hardware spec: http://blog.whatsapp.com/index.php/2012/01/1-million-is-so-2011/
|
g****t 发帖数: 31659 | 6 wechat不是比what's app用户还多? 是什么架构的?
high
of
),
at
【在 c*****e 的大作中提到】 : 看看c/c++ 人说的dream scalability done in erlang: : I came in with a healthy amount of skepticism since most of my previous high : -performance experience was with C/C++, but after we worked through some of : our bottlenecks (as described in my talk at last year’s Erlang Factory SF), : I came to realize that Erlang was a great fit for what we were doing. We : were achieving scalability goals on our hosts that we only dreamed about at : Yahoo! : 2 million tcp connections on a single box : * http://blog.whatsapp.com/index.php/2012/01/1-million-is-so-2011/ : * hardware spec: http://blog.whatsapp.com/index.php/2012/01/1-million-is-so-2011/
|
T********i 发帖数: 2416 | 7 这个是重点:>8000cores,Hundreds of terabytes of RAM
2M connections/server不算多。>70M Erlang messages per second,而且消息太简单
。比我们用的消息简单多了。
high
of
),
at
【在 c*****e 的大作中提到】 : 看看c/c++ 人说的dream scalability done in erlang: : I came in with a healthy amount of skepticism since most of my previous high : -performance experience was with C/C++, but after we worked through some of : our bottlenecks (as described in my talk at last year’s Erlang Factory SF), : I came to realize that Erlang was a great fit for what we were doing. We : were achieving scalability goals on our hosts that we only dreamed about at : Yahoo! : 2 million tcp connections on a single box : * http://blog.whatsapp.com/index.php/2012/01/1-million-is-so-2011/ : * hardware spec: http://blog.whatsapp.com/index.php/2012/01/1-million-is-so-2011/
|
c*****e 发帖数: 3226 | 8 怎么可能一个节点8000 cores, Hundreds of terabytes of RAM ! 脑残吧。
你给我攒一台?
【在 T********i 的大作中提到】 : 这个是重点:>8000cores,Hundreds of terabytes of RAM : 2M connections/server不算多。>70M Erlang messages per second,而且消息太简单 : 。比我们用的消息简单多了。 : : high : of : ), : at
|
v***e 发帖数: 2108 | 9 用Erlang写系统也有一段时间了,我只能说这种语言写并发程序
上手快,因为有一套gen_server之类的东西让你用,你不用去关心
那些底层的IPC, message passing, shared memory management的东西。
Erlang semantics sucks big,程序复杂了之后难以维护和调试,
compiler很弱,dialyzer极慢,debugger差不多是个Joke,很多
很简单的错误你要到runtime crash,之后才知道,个人认为不适
合写太复杂的东西。
high
of
),
at
【在 c*****e 的大作中提到】 : 看看c/c++ 人说的dream scalability done in erlang: : I came in with a healthy amount of skepticism since most of my previous high : -performance experience was with C/C++, but after we worked through some of : our bottlenecks (as described in my talk at last year’s Erlang Factory SF), : I came to realize that Erlang was a great fit for what we were doing. We : were achieving scalability goals on our hosts that we only dreamed about at : Yahoo! : 2 million tcp connections on a single box : * http://blog.whatsapp.com/index.php/2012/01/1-million-is-so-2011/ : * hardware spec: http://blog.whatsapp.com/index.php/2012/01/1-million-is-so-2011/
|
T********i 发帖数: 2416 | 10 这个是全部server加起来。他们自己blog写的。
效率还是不错啦。有人号称用php一周写出来是扯蛋。
但是也没有什么特别之处。
Standard user facing server:
Dual Westmere Hex-core (24 logical CPUs);
100GB RAM, SSD;
Dual NIC (public user-facing network, private back-end/distribution);
【在 c*****e 的大作中提到】 : 怎么可能一个节点8000 cores, Hundreds of terabytes of RAM ! 脑残吧。 : 你给我攒一台?
|
|
|
d*******r 发帖数: 3299 | 11 大牛你们又用 couchbase, 又用 Erlang 写 app?
【在 v***e 的大作中提到】 : 用Erlang写系统也有一段时间了,我只能说这种语言写并发程序 : 上手快,因为有一套gen_server之类的东西让你用,你不用去关心 : 那些底层的IPC, message passing, shared memory management的东西。 : Erlang semantics sucks big,程序复杂了之后难以维护和调试, : compiler很弱,dialyzer极慢,debugger差不多是个Joke,很多 : 很简单的错误你要到runtime crash,之后才知道,个人认为不适 : 合写太复杂的东西。 : : high : of
|
m******t 发帖数: 635 | 12 赞用Erlang的大牛
跑题下:只看过Programming Erlang,很好的一本书。
【在 v***e 的大作中提到】 : 用Erlang写系统也有一段时间了,我只能说这种语言写并发程序 : 上手快,因为有一套gen_server之类的东西让你用,你不用去关心 : 那些底层的IPC, message passing, shared memory management的东西。 : Erlang semantics sucks big,程序复杂了之后难以维护和调试, : compiler很弱,dialyzer极慢,debugger差不多是个Joke,很多 : 很简单的错误你要到runtime crash,之后才知道,个人认为不适 : 合写太复杂的东西。 : : high : of
|
c*****e 发帖数: 3226 | 13 2m tcp connections / node. 不是全部 server 加起来。
distribution);
【在 T********i 的大作中提到】 : 这个是全部server加起来。他们自己blog写的。 : 效率还是不错啦。有人号称用php一周写出来是扯蛋。 : 但是也没有什么特别之处。 : Standard user facing server: : Dual Westmere Hex-core (24 logical CPUs); : 100GB RAM, SSD; : Dual NIC (public user-facing network, private back-end/distribution);
|
T********i 发帖数: 2416 | 14 我就是指的是per node呀。12 core 100G memory。
2M TCP/mode很特别么?2M是相对比较稳定的。这个硬件7-8M以内没啥大问题。
连接请求处理速度会打折扣。如果用户频繁连接断开,性能会有所下降。但是这是TCP
persistent connection,即使smartphone也是这样的。不会频繁断开像HTTP一样。
连接请求能达到1M connection requests/second就不错了。
【在 c*****e 的大作中提到】 : 2m tcp connections / node. 不是全部 server 加起来。 : : distribution);
|
c*****e 发帖数: 3226 | 15 这个硬件7-8M以内没啥大问题? 你可真会大嘴巴跑火车!你有什么数据支持
这是人家运行的实际数据:
http://highscalability.com/blog/2014/2/26/the-whatsapp-architec
Peaked at 2.8M connections per server
571k pkts/sec, >200k dist msgs/sec
Made some memory optimizations so VM load was down to 70%.
Tried 3 million connections, but failed.
TCP
【在 T********i 的大作中提到】 : 我就是指的是per node呀。12 core 100G memory。 : 2M TCP/mode很特别么?2M是相对比较稳定的。这个硬件7-8M以内没啥大问题。 : 连接请求处理速度会打折扣。如果用户频繁连接断开,性能会有所下降。但是这是TCP : persistent connection,即使smartphone也是这样的。不会频繁断开像HTTP一样。 : 连接请求能达到1M connection requests/second就不错了。
|
T********i 发帖数: 2416 | 16 VM load 70%就说明问题了。
只要提及load这个词就知道他们什么水平了。
如果你看不出来,和你也没啥好说的。
【在 c*****e 的大作中提到】 : 这个硬件7-8M以内没啥大问题? 你可真会大嘴巴跑火车!你有什么数据支持 : 这是人家运行的实际数据: : http://highscalability.com/blog/2014/2/26/the-whatsapp-architec : Peaked at 2.8M connections per server : 571k pkts/sec, >200k dist msgs/sec : Made some memory optimizations so VM load was down to 70%. : Tried 3 million connections, but failed. : : TCP
|
c***d 发帖数: 996 | 17 load 70% 说明啥问题了?
【在 T********i 的大作中提到】 : VM load 70%就说明问题了。 : 只要提及load这个词就知道他们什么水平了。 : 如果你看不出来,和你也没啥好说的。
|
g*****g 发帖数: 34805 | 18 呵呵,你就别细问了。太监就是喜欢拍脑袋装逼,一上细节就露馅了。本来就是做客户
端的,服务器端的东西完全不懂。
【在 c***d 的大作中提到】 : load 70% 说明啥问题了?
|
e********3 发帖数: 18578 | 19 最后一篇文章信息量很大,收藏学习了。
high
of
),
at
【在 c*****e 的大作中提到】 : 看看c/c++ 人说的dream scalability done in erlang: : I came in with a healthy amount of skepticism since most of my previous high : -performance experience was with C/C++, but after we worked through some of : our bottlenecks (as described in my talk at last year’s Erlang Factory SF), : I came to realize that Erlang was a great fit for what we were doing. We : were achieving scalability goals on our hosts that we only dreamed about at : Yahoo! : 2 million tcp connections on a single box : * http://blog.whatsapp.com/index.php/2012/01/1-million-is-so-2011/ : * hardware spec: http://blog.whatsapp.com/index.php/2012/01/1-million-is-so-2011/
|
g*****g 发帖数: 34805 | 20 不知道2M怎么实现的。当年我们做过类似的架构, Ephemeral port的限制很讨厌,后来
是在一台机器上起10个虚拟机,每个能支持5万连接。 |
|
|
n******t 发帖数: 4406 | 21 2.8M个sockets...牛B在什么地方啊???
你写过system 级别的程序么?或者说,你用过BSD sockets写过non trivial的网络程
序么?
【在 c*****e 的大作中提到】 : 这个硬件7-8M以内没啥大问题? 你可真会大嘴巴跑火车!你有什么数据支持 : 这是人家运行的实际数据: : http://highscalability.com/blog/2014/2/26/the-whatsapp-architec : Peaked at 2.8M connections per server : 571k pkts/sec, >200k dist msgs/sec : Made some memory optimizations so VM load was down to 70%. : Tried 3 million connections, but failed. : : TCP
|
s***o 发帖数: 6934 | 22 rick reed是个大牛,当年在某虎内部mail list答疑无数
high
of
),
at
【在 c*****e 的大作中提到】 : 看看c/c++ 人说的dream scalability done in erlang: : I came in with a healthy amount of skepticism since most of my previous high : -performance experience was with C/C++, but after we worked through some of : our bottlenecks (as described in my talk at last year’s Erlang Factory SF), : I came to realize that Erlang was a great fit for what we were doing. We : were achieving scalability goals on our hosts that we only dreamed about at : Yahoo! : 2 million tcp connections on a single box : * http://blog.whatsapp.com/index.php/2012/01/1-million-is-so-2011/ : * hardware spec: http://blog.whatsapp.com/index.php/2012/01/1-million-is-so-2011/
|
s***o 发帖数: 6934 | 23 dialyzer确实很坑爹,但你不能不用。erlang确实不适合用来做商业逻辑很复杂以及
cpu intensive的应用,但是在自己的领域里还是相当好使的
【在 v***e 的大作中提到】 : 用Erlang写系统也有一段时间了,我只能说这种语言写并发程序 : 上手快,因为有一套gen_server之类的东西让你用,你不用去关心 : 那些底层的IPC, message passing, shared memory management的东西。 : Erlang semantics sucks big,程序复杂了之后难以维护和调试, : compiler很弱,dialyzer极慢,debugger差不多是个Joke,很多 : 很简单的错误你要到runtime crash,之后才知道,个人认为不适 : 合写太复杂的东西。 : : high : of
|
s***o 发帖数: 6934 | 24 我入门看的learn you some erlang,很好
【在 m******t 的大作中提到】 : 赞用Erlang的大牛 : 跑题下:只看过Programming Erlang,很好的一本书。
|
T********i 发帖数: 2416 | 25 你这种傻逼怎么动不动就跳出来?
你这辈子是不可能理解这一类问题了。让你丫做个100K连接都能憋死你。10M?你爹妈
没给你生出那个脑袋。
【在 g*****g 的大作中提到】 : 呵呵,你就别细问了。太监就是喜欢拍脑袋装逼,一上细节就露馅了。本来就是做客户 : 端的,服务器端的东西完全不懂。
|
T********i 发帖数: 2416 | 26 现在这些熊孩子算是被毁掉的一代了。
资讯这么发达,他们竟然还这么自闭。这是一个出奇葩的时代。
【在 n******t 的大作中提到】 : 2.8M个sockets...牛B在什么地方啊??? : 你写过system 级别的程序么?或者说,你用过BSD sockets写过non trivial的网络程 : 序么?
|
g*****g 发帖数: 34805 | 27 你丫连一万个用户都没见过的,成天装B没完了。
【在 T********i 的大作中提到】 : 你这种傻逼怎么动不动就跳出来? : 你这辈子是不可能理解这一类问题了。让你丫做个100K连接都能憋死你。10M?你爹妈 : 没给你生出那个脑袋。
|
T********i 发帖数: 2416 | 28 你这种蠢货是不会理解的。
不超过50行的程序,能不能保持10M connection,每秒消息多少,我当然心里有数。
你丫的问题是,没吃过猪肉,也没见过猪跑。
你这辈子可能都没这个机会了。
我话放在这里,10M concurrent persistent TCP connection,就是不到50行程序的事
情。你丫服不服?
【在 g*****g 的大作中提到】 : 你丫连一万个用户都没见过的,成天装B没完了。
|
c*****e 发帖数: 3226 | 29 考,说的你比 rick 还牛, 什么玩意儿!有本事做个证明一下,别 tmd 过嘴罂瘾。
【在 n******t 的大作中提到】 : 2.8M个sockets...牛B在什么地方啊??? : 你写过system 级别的程序么?或者说,你用过BSD sockets写过non trivial的网络程 : 序么?
|
T********i 发帖数: 2416 | 30 2.8M的没意思。
要做就做10M的。
如果有人要做一个出来给你瞧瞧,你愿意contribute多少钱?
【在 c*****e 的大作中提到】 : 考,说的你比 rick 还牛, 什么玩意儿!有本事做个证明一下,别 tmd 过嘴罂瘾。
|
|
|
a****i 发帖数: 1182 | 31 咱就是过嘴瘾怎么着吧。10G咱写一行就搞定。宇宙无敌不是
你要证明?凭啥给你啊
【在 c*****e 的大作中提到】 : 考,说的你比 rick 还牛, 什么玩意儿!有本事做个证明一下,别 tmd 过嘴罂瘾。
|
n******t 发帖数: 4406 | 32 计算机顾名思义就是compute,问题是这帮成天只知道fb,玩手机的,
都不会数数了。
【在 T********i 的大作中提到】 : 现在这些熊孩子算是被毁掉的一代了。 : 资讯这么发达,他们竟然还这么自闭。这是一个出奇葩的时代。
|
n******t 发帖数: 4406 | 33 他是谁我不知道。。。
你不牛是肯定的。。
2.8M个TCP sockets, 要花什么资源,你没概念。。。你才会觉得牛B。
【在 c*****e 的大作中提到】 : 考,说的你比 rick 还牛, 什么玩意儿!有本事做个证明一下,别 tmd 过嘴罂瘾。
|
n******t 发帖数: 4406 | 34 事实上,就是写几行就能让这种2杆子崇拜成这样,我为什么要写出来?
我是脑子有问题还是嫌自己挣钱太多?
【在 a****i 的大作中提到】 : 咱就是过嘴瘾怎么着吧。10G咱写一行就搞定。宇宙无敌不是 : 你要证明?凭啥给你啊
|
a****i 发帖数: 1182 | 35 照你的逻辑,你在这发贴是脑子有病还是嫌自己挣钱太多?
"事实上,就是写几行",和灌个水没太大区别吧
你有这功夫,把那几行代码写一下,比你把“简单”,“轻松”这类说一百遍都强
【在 n******t 的大作中提到】 : 事实上,就是写几行就能让这种2杆子崇拜成这样,我为什么要写出来? : 我是脑子有问题还是嫌自己挣钱太多?
|
n******t 发帖数: 4406 | 36 不一样的,我只所现在能在这里发帖,就是因为有这种人。。
把code写出来,对我有什么好处??
【在 a****i 的大作中提到】 : 照你的逻辑,你在这发贴是脑子有病还是嫌自己挣钱太多? : "事实上,就是写几行",和灌个水没太大区别吧 : 你有这功夫,把那几行代码写一下,比你把“简单”,“轻松”这类说一百遍都强
|
a****i 发帖数: 1182 | 37 非要说好处,你写了,别人就相信你。
有什么机会,人就会来找你,而不是找那种只会吹的。
【在 n******t 的大作中提到】 : 不一样的,我只所现在能在这里发帖,就是因为有这种人。。 : 把code写出来,对我有什么好处??
|
c*****e 发帖数: 3226 | 38 你耍无赖,你狠!
【在 a****i 的大作中提到】 : 咱就是过嘴瘾怎么着吧。10G咱写一行就搞定。宇宙无敌不是 : 你要证明?凭啥给你啊
|
z****e 发帖数: 54598 | 39 那这个就太狭隘了
数数最不会数的就是能把500页数成几千页的家伙
难怪五年就读了一个硕士
手机也好,fb也罢,这都是future
你不要盲目地排斥这些,数数也是不靠谱的
实战时候自己做点测试远比你拍脑袋靠谱得多
毕竟每一个连接消耗得资源都有可能不同
你按照最理想的消耗去预估,那这个后面也有巨大的风险
【在 n******t 的大作中提到】 : 计算机顾名思义就是compute,问题是这帮成天只知道fb,玩手机的, : 都不会数数了。
|
z****e 发帖数: 54598 | 40 猴屁股也没少耍无赖
【在 c*****e 的大作中提到】 : 你耍无赖,你狠!
|