Apa alasan utama yang membuat Facebook perlu menggunakan C ++ di samping PHP? Saya bertanya-tanya apakah saya membuat situs web dengan banyak pengunjung apakah saya perlu menggunakan C ++ juga?
web-development
php
Goma
sumber
sumber
Jawaban:
Inilah alasannya: HipHop untuk PHP: Bergerak Cepat :
sumber
Jawaban singkat - tidak, Anda tidak perlu C ++.
Saya yakin Anda mengacu pada HipHop . Jika Anda membaca tentang peningkatan yang diberikannya, itu sekitar 50%. Ini sangat penting jika Anda Facebook yang memiliki ribuan server frontend. Memotong beban berarti jutaan penghematan biaya pusat data. Dalam kasus perusahaan yang memiliki 10-100 server frontend, biaya pengembangan akan jauh melebihi penghematan yang mungkin. Bagaimanapun, pemrosesan yang paling berat dilakukan di back-end, yang biasanya merupakan solusi RDBMS atau NoSQL, dikembangkan sebagai kode C / C ++ yang sangat dioptimalkan.
Tentu saja bisa mencapai penghematan yang jauh lebih tinggi hanya dengan membuang PHP sepenuhnya. Tapi itu bukan sesuatu yang bisa Anda lakukan dengan basis kode besar, seperti halnya Facebook.
Sekarang, untuk bagian lain dari pertanyaan: jika Anda benar-benar ingin tahu bagaimana menangani banyak sekali, baca blog Skalabilitas Tinggi , khususnya bagian Arsitektur Kehidupan Nyata.
Itu mungkin dengan PHP, tapi jelas bukan pilihan saya. Jika Anda ingin bahasa yang dinamis, Python, Ruby atau mungkin Lua akan menjadi pilihan yang jauh lebih baik.
sumber
Yang menyenangkan tentang pendekatan FB adalah bahwa mereka tidak harus segera memutuskan. Anda harus melakukan hal yang sama. Pilih bahasa yang membuat Anda paling produktif, tetapi pastikan antarmuka itu mudah digunakan dengan C / C ++.
Setelah Anda memiliki jutaan pengguna dan perlu mencukur milidetik dari waktu respons, Anda dapat mengoptimalkan jalur kritis menggunakan C / C ++.
sumber
Elemen C ++ yang digunakan oleh Facebook adalah HHVM.
Itu adalah mesin virtual HIPHOP. Meskipun ditulis dalam C ++ pada dasarnya ini adalah "penerjemah PHP yang lebih baik".
Kode php dikompilasi menjadi kode byte yang kemudian ditafsirkan oleh HHVM pada waktu eksekusi dan tunduk pada optimasi "Just In Time" saat dijalankan.
Para pengembang di face book masih menulis sebagian besar dalam PHP, dan, apa yang Anda lihat di browser Anda hampir pasti dihasilkan oleh program PHP - semua yang telah dikompilasi dan ditafsirkan oleh runtime HHVM.
HHVM sebenarnya adalah open source yang tersedia secara bebas. Jadi, jika Anda perlu menyajikan satu juta gambar kucing lucu per jam, maka Anda dapat mengunduh HHVM dan mempercepat server Anda dengan perubahan minimal ke PHP Anda.
sumber