亚洲精品中文字幕无乱码_久久亚洲精品无码AV大片_最新国产免费Av网址_国产精品3级片

php語(yǔ)言

PHP與HHVM的比較

時(shí)間:2024-08-23 02:36:14 php語(yǔ)言 我要投稿
  • 相關(guān)推薦

PHP與HHVM的比較

  PHP 是最流行的用于 web 開(kāi)發(fā)的腳本語(yǔ)言之一。PHP 的最新版本,PHP 7 在性能上做了很大的優(yōu)化。不過(guò),PHP 還有一個(gè)競(jìng)爭(zhēng)對(duì)手 HHVM (HipHop Virtual Machine) — 一個(gè)運(yùn)行 PHP 代碼的虛擬工具。二者直接的比較正在升溫,那么讓我們來(lái)看一下他們直接的性能對(duì)比吧。

  什么是 HHVM?

  在2008年,臉譜網(wǎng) 啟動(dòng)了一項(xiàng)工作,計(jì)劃開(kāi)發(fā)一個(gè)工具 將 PHP 腳本轉(zhuǎn)換成 C++,這樣就可以被編譯后在 web 服務(wù)器上運(yùn)行。目的是節(jié)省服務(wù)器資源,這是一個(gè)很重要的目標(biāo),因?yàn)?臉譜網(wǎng) 的用戶(hù)量正在快速增長(zhǎng)。從這個(gè)意義上講,這個(gè)項(xiàng)目是成功的,因?yàn)樗梢宰尫⻊?wù)器處理之前五到六倍的請(qǐng)求量。

  時(shí)間回到2010年,臉譜網(wǎng) 的服務(wù)器需求已經(jīng)增加了很多,是時(shí)候考慮用新的創(chuàng)新來(lái)提升更大的效率;谶@個(gè)需求,臉譜網(wǎng) 開(kāi)發(fā)了 HHVM。

  HHVM 使用了 Just-In-Time (JIT) 編譯方式將 PHP 代碼轉(zhuǎn)換成某種字節(jié)碼。接下來(lái)把字節(jié)碼再轉(zhuǎn)換成機(jī)器碼并進(jìn)行優(yōu)化,讓它盡可能快的運(yùn)行。

  什么是PHP 7?

  PHP 7 是 PHP 社區(qū)對(duì) HHVM 的回應(yīng)。PHP 7 發(fā)布的預(yù)覽版本號(hào)稱(chēng)比之前的 PHP 5 的性能要提升100%。

  你可能會(huì)問(wèn) PHP 的版本直接從 PHP5 跳到了 PHP7,答案是這樣的:PHP6 的開(kāi)發(fā)開(kāi)始于2005年,但是它的進(jìn)展過(guò)于緩慢又出現(xiàn)了很多的問(wèn)題,這樣 PHP6 在它還沒(méi)有發(fā)布正式版本之前就有了不好的名聲。所以PHP社區(qū)決定給這個(gè)語(yǔ)言的新版本直接命名為 PHP7。

  真正的問(wèn)題不是 PHP5 和 PHP7 之間的比較,因?yàn)橐呀?jīng)很明顯了 PHP7 提供了更快速的運(yùn)行速度。但是我們想比較的是 PHP7 和 HHVM。很多專(zhuān)家已經(jīng)分別使用了這兩個(gè)方法來(lái)處理PHP代碼,并且揭示了一些有趣的結(jié)論。

  比較 PHP7 和 HHVM 的異同:

  在回答哪個(gè)更好之前,讓我們先來(lái)看一下他們之間的關(guān)鍵不同點(diǎn)和相似之處。

  代碼解析:

  PHP7 和 HHVM 之間的基本不同之處在于他們解析 PHP 代碼的方式。PHP7 使用標(biāo)準(zhǔn)的 PHP 解析器,它是一個(gè)可以給所有人使用的免費(fèi)軟件,可以在服務(wù)器上直接解析和運(yùn)行。它生成 HTML 代碼,然后發(fā)送給客戶(hù)端,客戶(hù)端顯示出用戶(hù)期望的內(nèi)容。

  相比之下,HHVM 首先把 PHP 代碼轉(zhuǎn)化為 HipHop 字節(jié)代碼,這個(gè)代碼再被翻譯成機(jī)器碼然后執(zhí)行。在這個(gè)過(guò)程中 HHVM 會(huì)對(duì)代碼進(jìn)行優(yōu)化,優(yōu)化一些影響執(zhí)行效率的 PHP 代碼,目標(biāo)是提高運(yùn)行速度。

  編寫(xiě)代碼:

  PHP 解析器和 HHVM 都可以接收 PHP 代碼然后運(yùn)行。這樣寫(xiě)代碼的過(guò)程是完全一樣的。但是如果你想使用 HHVM,你需要在你的服務(wù)器上安裝 HHVM 然后以命令行的方式通過(guò) HHVM 命令來(lái)調(diào)用。

  性能測(cè)試:

  HHVM 比之前的 PHP 版本能提供更快速的性能。但是最近的性能測(cè)試認(rèn)為至少在某些情況下 PHP7 是比 HHVM 稍微快些。讓我們來(lái)看一下由 Kinsta 來(lái)做的性能測(cè)試結(jié)果:

  WordPress:運(yùn)行在WordPress4.1.1的 PHP7 每秒鐘比 PHP5.6 能執(zhí)行超過(guò)兩倍的請(qǐng)求,但是沒(méi)有 HHVM3.6.1 提供的多,在測(cè)試中 HHVM 每秒鐘執(zhí)行624個(gè)請(qǐng)求而 PHP7 只執(zhí)行604個(gè)。

  Drupal:PHP7 可以給 Drupal 用戶(hù)提供比 HHVM 更加明顯的優(yōu)勢(shì)。PHP7 在 Drupal8 上的處理響應(yīng)效率比 HHVM 高出超過(guò)37個(gè)百分點(diǎn)。

  那些公司使用 HHVM?

  除了開(kāi)發(fā)出 HHVM 的臉譜網(wǎng)公司外,還有很多其他公司也采用了這個(gè)方案,在服務(wù)器上用 HHVM 運(yùn)行 PHP 應(yīng)用,包括 Wikimedia 和電子商務(wù)網(wǎng)站 Etsy。

  Wikimedia:Wikimedia 擁有大量的教育內(nèi)容,包括著名的在線(xiàn)百科全書(shū)維基百科。維基百科每 個(gè)月吸引著近五億的互聯(lián)網(wǎng)用戶(hù),為了滿(mǎn)足這樣高級(jí)的需求,需要優(yōu)化服務(wù)器的性能,和 PHP相比 HHVM 有一個(gè)顯著的優(yōu)點(diǎn),它可以同時(shí)加載多個(gè) SPU 核心, 而 PHP 是單線(xiàn)程語(yǔ)言,不能被并行化。維基百科部署了 HHVM 后,CPU 的負(fù)載從50%降到了10%,用戶(hù)提交編輯時(shí)的平均響應(yīng)時(shí)間減少到原來(lái)的一半,頁(yè)面的平均加載時(shí)間從原來(lái)的1.3秒降到了0.9秒。

  Etsy: 擁有五千四百萬(wàn)用戶(hù)的 Tesy 同樣迫切需要提高服務(wù)器性能,Etsy 的工程師對(duì)比了HHVM 和 PHP5.4 的性能,發(fā)現(xiàn) HHVM 每秒可以處理280個(gè)服務(wù)器請(qǐng)求,而對(duì)于 PHP5.4,如果每秒的請(qǐng)求數(shù)超過(guò)了190次,服務(wù)器的響應(yīng)時(shí)間就會(huì)急劇增加。

  PHP 7 和 HHVM的前景如何?

  由于 PHP 7 的穩(wěn)定版本將在2015年11月發(fā)布,因此目前還沒(méi)有公司使用這個(gè)新的語(yǔ)言,由于 PHP 7 的 beta 版在基準(zhǔn)測(cè)試中表現(xiàn)出色,未來(lái)能夠吸引更多公司使用 PHP 7。

  PHP 的前途一片光明,那么 HHVM呢?它可能會(huì)繼續(xù)活得很好。很多公司已經(jīng)在網(wǎng)站中使用了 HHVM提高性能,在 PHP 和 HHVM 之間遷移不是一蹴而就的。Etsy 花了至少6個(gè)月的時(shí)間。由于 PHP7 和HHVM 相比性能提升不大,那些公司不太可能急于切換到PHP。

  臉譜網(wǎng) 仍然會(huì)繼續(xù)開(kāi)發(fā) HHVM。它最近宣布支持蘋(píng)果的操作系統(tǒng),使在蘋(píng)果開(kāi)發(fā)環(huán)境下工作的開(kāi)發(fā)者可以使用這個(gè)技術(shù)。HHVM 的開(kāi)發(fā)者相信在很多情況下 HHVM 比 PHP7 更快,包括 WorldPress。

  為什么 HHVM 和 PHP 7 對(duì)于網(wǎng)店老板存在競(jìng)爭(zhēng)關(guān)系?

  作為一個(gè)網(wǎng)店老板,你需要根據(jù)你的網(wǎng)店所在的平臺(tái)決定是否使用 PHP7 或 HHVM。如果你的網(wǎng)站是用 WorldPress 創(chuàng)建的,那么你可以看看最新版本的 HHVM 和 PHP 7 的基準(zhǔn)測(cè)試結(jié)果,從測(cè)試結(jié)果可以發(fā)現(xiàn)兩者在性能上的差異,然后你就可以選擇解決方案,最大限度地減小頁(yè)面加載時(shí)間,服務(wù)器響應(yīng)時(shí)間和 CPU 使用率。

  選擇 HHVM 的原因

  HHVM 使用動(dòng)態(tài)翻譯技術(shù),在大多數(shù)情況下(包括WordPress)可以提供更高的性能。

  HHVM 在處理大量請(qǐng)求時(shí),可以保證每個(gè)請(qǐng)求只使用少量的內(nèi)存。

  HHVM 開(kāi)發(fā)者正在穩(wěn)步增加這個(gè)引擎所能運(yùn)行的 PHP 代碼的數(shù)量,它已經(jīng)可以運(yùn)行最新版本的 WorldPress,以及其他常見(jiàn)的 PHP 框架和應(yīng)用。

  HHVM 是開(kāi)源的,盡管 HHVM 是 臉譜網(wǎng) 開(kāi)發(fā)的,但它是開(kāi)源的,意味著任何人都可以使用和修改它的源碼。

  選擇 PHP 7 的理由

  PHP 7 在某些情況下比 HHVM 更快,包括運(yùn)行 Drupal 8。

  使用 PHP 7 不需要安裝設(shè)置 HHVM。

  盡管很多 PHP 4 的功能在新版本中不再支持,但用 PHP 5 寫(xiě)的代碼在轉(zhuǎn)換到 PHP 7 后將會(huì)如預(yù)期一樣工作。

  PHP 7 由 PHP 社區(qū)開(kāi)發(fā),這是一群開(kāi)發(fā)穩(wěn)定可靠 PHP 版本久負(fù)盛名的人。

  HHVM vs. PHP 7: 作出你的選擇

  不要猶豫太久,Kinsta 建議那些在線(xiàn)的網(wǎng)站盡量在 PHP 7 與 HHVM 之間作出選擇,早點(diǎn)開(kāi)始實(shí)施解決方案,讓你的網(wǎng)站性能得到優(yōu)化。一個(gè)低效的網(wǎng)站也會(huì)讓你的聲譽(yù)受損,那將很難挽回。

【PHP與HHVM的比較】相關(guān)文章:

什么是PHP PHP與ASP比較09-18

PHP集成開(kāi)發(fā)工具(IDE)的比較09-25

四大PHP集成開(kāi)發(fā)環(huán)境的比較09-25

ASP、JSP、PHP三種技術(shù)比較05-30

幾種流行PHP集成開(kāi)發(fā)工具(IDE)的比較08-10

php中file-get-contents與curl性能比較08-13

php中file-get-contents與curl性能比較分析10-24

PHP 程序員用哪個(gè)編輯器比較好07-13

php與php MySQL之間的關(guān)系10-03

php正則去掉php注釋07-30