Facebook มีการเปลี่ยนแปลงมากมายหลายอย่างและไม่ได้ออกแบบมาเพื่อให้มีประสิทธิภาพ มันถูกออกแบบมาเพื่อทำงาน ฉันไม่ทราบเลยว่าโค้ดมีลักษณะอย่างไรและคุณอาจไม่พบข้อมูลมากนัก (เพื่อความปลอดภัยและเหตุผลด้านลิขสิทธิ์ที่ชัดเจน) แต่ลองดูที่ API ดูว่ามันเปลี่ยนแปลงบ่อยแค่ไหนและเท่าไหร่มันทำงานไม่ถูกต้องอีกต่อไปหรือเลย
ฉันคิดว่าแขนที่ใหญ่ที่สุดของพวกเขาคือ Hiphop
http://developers.facebook.com/blog/post/358
คุณสามารถใช้ HipHop ได้ด้วยตัวเอง:
https://github.com/facebook/hiphop-php/wiki
แต่ถ้าคุณถามฉันว่ามันเป็นงานที่ทะเยอทะยานและเสียเวลามาก Hiphop รองรับมากเท่านั้นไม่สามารถแปลงทุกอย่างเป็น C ++ ได้ แล้วนี่บอกอะไรเรา มันบอกเราว่า Facebook ไม่ได้ใช้ประโยชน์จากภาษา PHP อย่างเต็มที่ ไม่ได้ใช้ 5.3 ล่าสุดและฉันยินดีที่จะเดิมพันว่ายังมีอีกมากที่เข้ากันได้กับ PHP 4 มิฉะนั้นพวกเขาไม่สามารถใช้ HipHop ได้ HipHop เป็นไอเดียที่ดีและต้องการเติบโตและขยาย แต่ในสถานะปัจจุบันมันไม่ได้มีประโยชน์สำหรับคนจำนวนมากที่กำลังสร้างแอพ PHP ใหม่
นอกจากนี้ยังมี PHP ไปยัง JAVA ผ่านสิ่งต่าง ๆ เช่น Resin / Quercus อีกครั้งมันไม่รองรับทุกอย่าง ...
อีกสิ่งที่ควรทราบคือถ้าคุณใช้โมดูล PHP ที่ไม่ได้มาตรฐานคุณจะไม่สามารถแปลงรหัสนั้นเป็น C ++ หรือ Java ได้ อย่างไรก็ตาม ... มาดูโมดูล PHP กันดีกว่า พวกเขาจะรวบรวมใน C ++ ดังนั้นถ้าคุณสามารถสร้างโมดูล PHP ที่ทำสิ่งต่าง ๆ (เช่นการแยกวิเคราะห์ XML เป็นต้น) คุณก็จะต้องทำงานด้วยความเร็วเท่าเดิม แน่นอนว่าคุณไม่สามารถสร้างโมดูล PHP สำหรับทุกความต้องการที่เป็นไปได้และแอปทั้งหมดของคุณเพราะคุณจะต้องคอมไพล์ใหม่และมันจะยากกว่าในการเขียนโค้ด ฯลฯ
อย่างไรก็ตาม ... มีบางโมดูล PHP ที่มีประโยชน์ที่สามารถช่วยแก้ปัญหาเรื่องความเร็วได้ แม้ว่าในตอนท้ายของวันเรามีสิ่งที่น่ากลัวนี้เรียกว่า "คลาวด์" และด้วยเราสามารถปรับขนาดแอปพลิเคชันของเรา (รวม PHP) ดังนั้นมันจึงไม่สำคัญอีกต่อไป ฮาร์ดแวร์กำลังถูกลงและถูกลง Amazon เพิ่งลดราคาลง (อีกครั้ง) พูดถึง
ตราบใดที่คุณเขียนรหัสแอป PHP ของคุณด้วยแนวคิดที่ว่ามันจะต้องมีขนาดหนึ่งวัน ... จากนั้นฉันคิดว่าคุณสบายดีและฉันก็ไม่แน่ใจจริงๆว่าฉันจะดู Facebook และสิ่งที่พวกเขาทำเพราะเมื่อ พวกเขาทำมันมันเป็นโลกที่แตกต่างอย่างสิ้นเชิงและตอนนี้พยายามที่จะยึดโครงสร้างพื้นฐานนั้นและรักษามันไว้ ... เอาละคุณได้สิ่งต่าง ๆ อย่างฮิปฮอป
ตอนนี้ฮิปฮอปจะช่วยคุณได้อย่างไร มันจะไม่ มันไม่สามารถ คุณเริ่มใหม่คุณสามารถใช้ PHP 5.3 ฉันขอแนะนำให้ดูในกรอบงาน PHP 5.3 และประโยชน์ใหม่ทั้งหมดที่ PHP 5.3 นำมาไว้ในตารางพร้อมกับไลบรารี SPL และคิดถึงฐานข้อมูลของคุณด้วย คุณมักจะแสดงเนื้อหาจากฐานข้อมูลดังนั้นให้ตรวจสอบ MongoDB และฐานข้อมูลประเภทอื่น ๆ ที่มีโครงสร้างน้อยกว่าและใช้เอกสารเป็นหลัก พวกมันเร็วกว่าและดีกว่าสำหรับเว็บไซต์ / แอพประเภทสามัญที่สุด
ดู บริษัท ใหม่ ๆ เช่น Foursquare และ Smugmug และ บริษัท อื่น ๆ ที่ใช้เทคโนโลยีใหม่และพวกเขาใช้งานอย่างไร เพื่อที่จะประสบความสำเร็จอย่าง Facebook ฉันจะไม่มองพวกเขาอย่างจริงจังว่า "วิธี" ในการสร้างเว็บไซต์ / แอพที่มีประสิทธิภาพ ฉันไม่ได้บอกว่าพวกเขาไม่มีคนเก่ง (มาก) ที่ทำงานที่นั่นซึ่งกำลังแก้ปัญหาอย่างสร้างสรรค์ ... ฉันยังไม่ได้บอกว่า Facebook ไม่ใช่ความคิดที่ดีโดยทั่วไปและไม่ใช่ ประสบความสำเร็จและคุณไม่ควรได้รับแนวคิดจากมัน .... ฉันแค่บอกว่าถ้าคุณสามารถดูซอร์สโค้ดทั้งหมดของพวกเขาคุณอาจจะไม่ได้รับประโยชน์จากมัน