¿Cuál es la razón principal que hizo que Facebook necesitara usar C ++ además de PHP? Me pregunto si creo un sitio web con muchos visitantes. ¿Necesitaría usar C ++ también?
web-development
php
Goma
fuente
fuente
Respuestas:
He aquí por qué: HipHop para PHP: muévete rápido :
fuente
Respuesta corta: no, no necesitas C ++.
Creo que te refieres a HipHop . Si lees sobre las mejoras que ofrece, es aproximadamente el 50%. Esto es muy importante si eres Facebook, que tiene miles de servidores frontend. Reducir la carga sobre ellos significa millones en ahorros de costos en centros de datos. En el caso de una compañía que tiene 10-100 servidores frontend, el costo de desarrollo compensaría mucho los posibles ahorros. De todos modos, el procesamiento más pesado se realiza en el back-end, que generalmente es una solución RDBMS o NoSQL, desarrollada como código C / C ++ altamente optimizado.
Por supuesto, podría haber logrado ahorros mucho más altos simplemente volcando PHP por completo. Pero eso no es algo que pueda hacer con una gran base de código, como en el caso de Facebook.
Ahora, para otra parte de la pregunta: si realmente quieres saber cómo lidiar con grandes cargas, lee el blog de Alta Escalabilidad , especialmente la parte de Arquitecturas de la Vida Real.
Es posible con PHP, pero definitivamente no sería mi elección. Si desea un lenguaje dinámico, Python, Ruby o quizás Lua sería una opción mucho mejor.
fuente
Lo bueno del enfoque de FB es que no tuvieron que decidir de inmediato. Deberías hacer lo mismo. Elija el idioma que lo haga más productivo, pero asegúrese de que interactúe fácilmente con C / C ++.
Una vez que tenga millones de usuarios y necesite reducir milisegundos los tiempos de respuesta, puede optimizar las rutas críticas utilizando C / C ++.
fuente
El elemento C ++ utilizado por Facebook es el HHVM.
Esa es la máquina virtual HIPHOP. Aunque está escrito en C ++, es esencialmente un "mejor intérprete PHP".
El código php se compila en código de bytes que luego HHVM interpreta en el momento de la ejecución y está sujeto a optimizaciones "Just In Time" a medida que se ejecuta.
Los desarrolladores de Facebook todavía escriben principalmente en PHP, y, lo que ves en tu navegador es casi seguro que lo emite un programa PHP, todo lo cual ha sido compilado e interpretado por el tiempo de ejecución HHVM.
El HHVM real es de código abierto disponible gratuitamente. Entonces, si necesita servir un millón de fotos lindas de gatitos por hora, puede descargar el HHVM y acelerar su servidor con un cambio mínimo en su PHP.
fuente