文档章节

Web 框架 = LinkedIn 工程师的观点

自由之信
 自由之信
发布于 2015/12/06 17:20
字数 485
阅读 104
收藏 2

youtube上有一个LinkedIn 工程师介绍Play Framework的视频(https://www.youtube.com/watch?v=8z3h4Uv9YbE),他对比Java,ROR,NodeJS以及Play Framework,说出了实质的问题,Java 采用的是线程池的结构,基本上线程是同步的,也就是说,只要结果没有返回,下一条语句就无法执行,这带来一个问题,大型的Web是基于SOA的结构,采用了很多Service,这些Service一般通过RPC来通信,如果其中一个阻塞了,那么,这样的延迟就会散步到其他的Service上面,导致Latency扩散到整个系统,结果所有受影响的部分都开始变慢。更悲剧的是Java的线程很难管理,通常有一个叫做Thread Hell的噩梦。

简单的例子,诸如:

A = CallServiceA

B = CallServiceB

如果A阻塞了,B是无法执行的。

诸如Spring等框架都存在类似的问题。

所以必须要用NIO,非阻塞的IO,非阻塞的IO里面,最显著的就是NodeJS,NodeJS的问题是,NodeJS很棒,但是NodeJS的大量的库都非常的不成熟,还有兼容的问题,所以NodeJS很难有成熟的Web 框架。

ROR的问题是,ROR很慢,而且实际上ROR是不支持线程的,不过现在可能有了,但是ROR的优点是,ROR写起来很快,有很多模块可以使用,社区很活跃,可能是写Web最快的语言。

Play 相对来说平衡最好的框架,但是相对于初学者而言,Scala的语法写的SBT看起来很糟糕,很难阅读和理解,而且基本上在搜索引擎上查不到解释。

个人觉得说的有道理,所以简单介绍一下,有兴趣应该翻过去看看原始的视频,讲的很好,特别是后半部分对比各种框架的时候。

© 著作权归作者所有

自由之信
粉丝 38
博文 33
码字总数 34922
作品 1
其他
私信 提问
前端开发是否存在身份危机?

前端开发依然存在吗?还是它已经演变成为另外一种我们不太熟悉的东西?这和大自然的进化过程一样,“前端”技术的演变导致了几种不同的风格 --- 在我看来这是一种开发者的身份危机。 什么是前...

oschina
2018/10/30
2.7K
3
探秘LinkedIn工程师团队:技术党支撑的SNS未来

以下为钛媒体译者编译自GigaOm科技网站的文章。希望能署译者名,并注明”钛媒体(www.tmtpost.com)“的来源:http://www.tmtpost.com/20874.html 全文如下: 摘要:LinkedIn的后台需要精准算法...

tmtpost
2013/03/07
1K
0
领英2018年报告:区块链开发者位列新兴工作榜首

领英2018年报告:区块链开发者位列新兴工作榜首 2018-12-14 16:21编辑: 米米狗分类:区块链来源:巴比特 区块链 招聘信息: 图像处理及模式识别工程师 C/C++工程师 Cocos2d-x游戏客户端开发...

米米狗
2018/12/14
0
0
从 LinkedIn 的数据处理机制学习数据架构

LinkedIn.com是当今最流行的专业社交网站之一,本文描述了LinkedIn.com是如何管理数据的。如你对文中的观点有异议亦或文中有遗漏的部分请随时告诉我。 LinkedIn.com数据用例 下面是一些数据用...

oschina
2014/06/05
3.5K
4
2016 Web 开发资源工具大搜罗

 原文链接: 100+ Awesome Web Development Tools and Resources Web的迅猛发展对于开发者来说既是一件好事也是一件坏事。不断紧跟潮流学习新的技术、编程语言、适应变化听起来就很令人兴奋...

两味真火
2016/10/03
5.9K
13

没有更多内容

加载失败,请刷新页面

加载更多

一、docker 入坑(win10和Ubuntu 安装)

前言 终究还是绕不过去了,要学的知识真的是太多了,好在我们还有时间,docker 之前只闻其声,不曾真正的接触过,现在docker 越来越火,很多公司也都开始使用了。所以对于我们程序员而言,又...

quellanan2
27分钟前
4
0
AutoCompleteTextView

小技巧按菜单键 当菜单打开之前会调用onMenuOpened(int featereId,Menu menu),可以重写这个方法,弹出对话框或者Popmenu 再布局中添加控件AutoCompleteTextView. <AutoCompleteTextVie...

逆天游云
30分钟前
4
0
谷歌软件商店:推出5美元会员 可用数百个软件

腾讯科技讯,谷歌和苹果是全球两大智能手机操作系统的运营者,两家公司旗下分别拥有占据行业垄断地位的谷歌软件商店和苹果软件商店。据外媒最新消息,手机软件商店的商业模式正在发生一些变化...

linuxCool
52分钟前
3
0
RocketMQ 多副本前置篇:初探raft协议

Raft协议是分布式领域解决一致性的又一著名协议,主要包含Leader选举、日志复制两个部分。 温馨提示: 本文根据raft官方给出的raft动画进行学习,其动画展示地址:http://thesecretlivesofda...

中间件兴趣圈
52分钟前
3
0
elasticsearch 6.8.0 添加认证

1. 修改elasticsearch-6.8.0/config/elasticsearch.yml 最后添加一行:xpack.security.enabled: true 2. 初始化用户和密码 ./bin/elasticsearch-setup-passwords interactive 我这里初始化为......

coord
54分钟前
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部