- 积分
- 0
- 在线时间
- 2 小时
- 主题
- 7
- 注册时间
- 2019-10-11
- 帖子
- 7
- 最后登录
- 2019-10-12
- 帖子
- 7
- 软币
- 94
- 在线时间
- 2 小时
- 注册时间
- 2019-10-11
|
fb的前端,或者叫“产品”组,的主要开发语言还是魔改后的“hack for PHP”。这部分即提供了所有社交网络业务相关的数据模型,也负责大部分的网页端渲染工作。
产品组另外就是渲染层的objectc,android java,react和react native。前两者必不可少,没办法。后一位优势显著,高交互性的ui很多都有react的版本。具体实现的时候去ui库里翻,翻着啥算啥。
除开基本数据模型之外,都是散布在各处的service,包括数据模型的底层存储之类的。service之间大多靠thriftprotocol 交互,也有hive和mysql这种交互接口感人的玩意儿。
service本身的实现语言全看各组喜好。cpp应该是大头,也有java,python。我似乎见过d,go这种鬼。自己用过scala。反正service只要暴露接口,怎么实现自己负责。
数据处理是python + presto/hive。python写pipeline,另两个负责具体的查询。
ml具体的实现应该是cafe + cafe2吧。torch也有产品组在用。胶水还是python
语言的分析处理应该是ocaml的stack,也见过神奇的基于prolog的数据库。
机器部署有chef,应该是基于ruby的玩意儿。
http://www.45zq.cn/portal/article/index/id/196.html
|
|