จุดกำเริ่มต้นของ HHVM (HipHop Virtual Machine) 

ต้องย้อนไปปี 2010  Facebook เปิดตัว HipHop for PHP ตัวแปลภาษา PHP เป็นไบนารีเพื่อเร่งความเร็วของ PHP  โดยจะแปลงเป็น C++ ก่อนแล้วค่อยคอมไพล์ปกติอีกครั้ง

HipHop เวอร์ชันแรกมีปัญหาเรื่องความซับซ้อนของโค้ด และ ไม่สนับสนุนภาษา  PHP  เต็มรูปแบบ บางคำสั่งก็ได้ บางคำสั่งก็ไม่ได้ รวมถึงคำสั่งที่ใช้บ่อยในการเขียน Advance PHP Programming ในยุคหลังอย่าง create_function, eval ก็ใช้งานไม่ได้เช่นกัน ผนวกกับปัญหาอีกมากมาย เช่นกิน Resource ในการคอมไพล์มาก Debug ยาก จนส่งผลให้ท้ายที่สุด Facebook ก็ประกาศยกเลิกใช้เจ้า HPHPc ไป ช่วงปลายปี 2011 บริษัทเลยออกซอฟต์แวร์เวอร์ชันสองชื่อ HipHop Virtual Machine หรือ HipHop VM (HHVM) โดยใช้เทคนิคด้านการแปลงโค้ดแบบใหม่มาช่วย ซอฟต์แวร์เวอร์ชันสองสามารถทดแทนซอฟต์แวร์เวอร์ชันแรกในบางส่วน แต่ยังไม่สามารถเอาชนะซอฟต์แวร์เวอร์ชันแรกในส่วนของ C++ ในเรื่องประสิทธิภาพได้ อีก 2 ปีต่อมา Facebook ได้ประกาศว่า HHVM นั้นมีประสิทธิเหนือกว่า HPHPc แล้ว

สำหรับเจ้าตัว HHVM นั้นทำตัวเป็น Interpreter ทำงานแทน PHP Interpreter เช่นพวก php5-fpm เลยโดยสมบูรณ์ ทำหน้าที่รับโค้ดเข้ามา แล้วแปลงเป็น Bytecode (HHBC) ก่อนจะแปลงเป็น Binary เพื่อรันแบบ Native อีกทีหนึ่งด้วย JIT ผลคือไม่ต้องมานั่งคอมไพล์ก่อนรันเพราะมันคอมไพล์แบบ Runtime ให้ แถมยังคงซึ่งประสิทธิภาพที่เหนือกว่า  PHP  ทั่วไปอย่างมหาศาล จากการที่มันเป็น Native และ I/O Non Blocking

http://nuuneoi.com/blog/671/hhvm-vs-hphpc1.png

ยังไม่หมดเพียงแค่นั้นทาง Facebook ได้ปล่อย Hack Language  ที่สร้างขึ้นมาเองเพื่อนพัฒนาเจ้าตัว HHMV

http://files.phpclasses.org/files/blog/file/hhvm-hack.png

โดยสร้างโครงสร้างภาษาเพิ่มเติมจาก  PHP  ของตัวเองขึ้นมาพร้อมกับ Library เพิ่มเติมบางส่วน ชื่อว่า Hack Language ที่ทำให้การเขียนโปรแกรมด้วย  PHP  ที่ว่าง่ายแล้ว ง่ายขึ้นไปอีกและมีรูปแบบภาษาที่ Flexible น้อยลง 

Credit : http://nuuneoi.com/

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
สอบถาม สมัครสมาชิกใช้เว็บงานเว็บไซต์ไม่ได้ ทำอย่างไร
โดย internTk21 พ 10 เม.ย. 2024 2:23 pm บอร์ด ถาม - ตอบ คอมพิวเตอร์
4
263
พฤ 11 เม.ย. 2024 10:48 am โดย mindphp View Topic สอบถาม สมัครสมาชิกใช้เว็บงานเว็บไซต์ไม่ได้ ทำอย่างไร
สอบถาม วิธีแนบรูปเกิน15รูปในบทความใน Mindphp ทำอย่างไร
โดย internTk21 พ 10 เม.ย. 2024 9:27 am บอร์ด ถาม - ตอบ คอมพิวเตอร์
1
117
พ 10 เม.ย. 2024 5:18 pm โดย mindphp View Topic สอบถาม วิธีแนบรูปเกิน15รูปในบทความใน Mindphp ทำอย่างไร
วลีที่มักในการเขียน Argumentative essay
โดย internTk21 อ 09 เม.ย. 2024 11:17 am บอร์ด Microsoft Office Knowledge & line & Etc
0
165
อ 09 เม.ย. 2024 11:17 am โดย internTk21 View Topic วลีที่มักในการเขียน Argumentative essay
Phrasal verb ในชีวิตประจำวัน
โดย internTk21 จ 08 เม.ย. 2024 2:55 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
201
จ 08 เม.ย. 2024 2:55 pm โดย internTk21 View Topic Phrasal verb ในชีวิตประจำวัน
วิธีการใช้เครื่องหมายวรรคตอนในภาษาอังกฤษ
โดย internTk21 จ 08 เม.ย. 2024 2:13 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
139
จ 08 เม.ย. 2024 2:13 pm โดย internTk21 View Topic วิธีการใช้เครื่องหมายวรรคตอนในภาษาอังกฤษ
มารู้จัก Noun modifiers ในภาษาอังกฤษกันเถอะ
โดย internTk21 จ 08 เม.ย. 2024 1:16 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
137
จ 08 เม.ย. 2024 1:16 pm โดย internTk21 View Topic มารู้จัก Noun modifiers ในภาษาอังกฤษกันเถอะ
คำศัพท์ Antonyms ที่ใช้ในชีวิตประจำวัน
โดย internTk21 จ 08 เม.ย. 2024 11:52 am บอร์ด Microsoft Office Knowledge & line & Etc
0
136
จ 08 เม.ย. 2024 11:52 am โดย internTk21 View Topic คำศัพท์ Antonyms ที่ใช้ในชีวิตประจำวัน
Stress คำศัพท์ภาษาอังกฤษอย่างไรให้ถูกต้อง
โดย internTk21 อ 07 เม.ย. 2024 11:57 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
138
อ 07 เม.ย. 2024 11:57 pm โดย internTk21 View Topic Stress คำศัพท์ภาษาอังกฤษอย่างไรให้ถูกต้อง