目錄
回复内容:
首頁 後端開發 php教程 为什么 Facebook 不使用 Java 架构?使用 Java 与 PHP 架构相比有哪些优势和劣势?

为什么 Facebook 不使用 Java 架构?使用 Java 与 PHP 架构相比有哪些优势和劣势?

Jun 17, 2016 am 08:32 AM

回复内容:

因为PHP是脚本语言,而Java是编译型语言。
大型互联网系统核心问题是scale(扩展,尤其是水平扩展),scale不是一门语言解决的。所以我们会关注这些系统的架构。Facebook主要是一个内容型系统加上消息型系统,它主要面临的问题是数据存取和消息传递,这些部分都和“前端(广义)”无关。
因为核心的问题和“前端(广义)”没有直接关系,是一个独立的问题。所以逻辑是:
  1. Founder使用什么语言;Founder的关系网络里使用哪种语言多。这两个因素第一。
  2. 脚本语言在测试和部署上面有更快速的周期,生态链更加简单。
  3. Java的JDK虽然是火箭技术,不过它的授权从来就是问题,很大影响了整个技术桟的选择。
这些因素考虑下来不用Java是理所应当的,使用其它脚本语言是碰巧发生的一种可能。 语言问题对facebook这种级别的公司,不能说不重要,但他们考量的标准肯定跟我们平常做个项目时不一样。facebook有大量优秀的工程师,可以在语言级别改造php。并且,据说php对facebook来说就是胶水语言。
j2ee的优势在于能让大量低水平工程师协同开发出一个还能用的系统。其它语言没在实际开发过项目,不好评论。
总的感觉是,facebook的水平导致了他们采用什么语言都能完成开发目标,对于一般公司来说,做企业级开发用j2ee或者.net仍然是比较好的选择。想敏捷的话,用php或python好一些。 因为项目开始的时候作者擅长php,问问哪个项目不是这个原因,其他解释说法都是自己意淫 1. facebook 使用php
2. facebook 开发了HipHop,性能大大提高
3. 数据库的分布式架构好,用户登录验证表就俩字段,其他全部拆分出去了
4. 还有其他的 应该是用C/C++ 完成的

PHP本身就是为互联网开发而出现的语言,非常适合Web开发,且类库非常丰富,开发效率非常高,且执行效率也非常不错。
java本来是为嵌入式设备设计的语言,开发Web还是略显笨重,其实大多数的互联网公司都是用PHP的。这两年Android开发又培养了不少做java开发的人。

相比较而言,java的可维护性要比PHP好,java代码的可读性也比PHP强,看到一堆的$符号实在有些晕啊。 php架在前端 后端用了一些java和c++ FB肯定不是PHP的,PHP最多算是个表皮
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前 By 尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
4 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

11個最佳PHP URL縮短腳本(免費和高級) 11個最佳PHP URL縮短腳本(免費和高級) Mar 03, 2025 am 10:49 AM

11個最佳PHP URL縮短腳本(免費和高級)

Instagram API簡介 Instagram API簡介 Mar 02, 2025 am 09:32 AM

Instagram API簡介

在Laravel中使用Flash會話數據 在Laravel中使用Flash會話數據 Mar 12, 2025 pm 05:08 PM

在Laravel中使用Flash會話數據

構建具有Laravel後端的React應用程序:第2部分,React 構建具有Laravel後端的React應用程序:第2部分,React Mar 04, 2025 am 09:33 AM

構建具有Laravel後端的React應用程序:第2部分,React

簡化的HTTP響應在Laravel測試中模擬了 簡化的HTTP響應在Laravel測試中模擬了 Mar 12, 2025 pm 05:09 PM

簡化的HTTP響應在Laravel測試中模擬了

php中的捲曲:如何在REST API中使用PHP捲曲擴展 php中的捲曲:如何在REST API中使用PHP捲曲擴展 Mar 14, 2025 am 11:42 AM

php中的捲曲:如何在REST API中使用PHP捲曲擴展

在Codecanyon上的12個最佳PHP聊天腳本 在Codecanyon上的12個最佳PHP聊天腳本 Mar 13, 2025 pm 12:08 PM

在Codecanyon上的12個最佳PHP聊天腳本

宣布 2025 年 PHP 形勢調查 宣布 2025 年 PHP 形勢調查 Mar 03, 2025 pm 04:20 PM

宣布 2025 年 PHP 形勢調查

See all articles