¿Por qué Facebook convierte su código PHP a C ++?

La razón es simple y directa: Facebook tiene miles de millones de registros para buscar y procesar, ya que se ha creado sobre PHP, que es un lenguaje de scripting. Los lenguajes de scripting generalmente son menos eficientes cuando se trata del uso de CPU y memoria que los códigos tradicionales C, C ++. Por lo tanto, es un desafío para el sitio confiar en un lenguaje de scripting como PHP considerando el factor de escala Más de x mil millones de visitas a páginas basadas en PHP. Por lo tanto, convertirlo a c ++ significa menos CPU significa el uso que resulta con menos servidores, lo que significa menos gastos generales de mantenimiento que a su vez significa rentable . Teniendo El código de PHP durante el desarrollo y la conversión a c ++ les brinda los beneficios en términos de productividad del programador del lenguaje de scripting junto con un uso eficiente de la CPU y la memoria, por lo que es una compensación para hacerlo.

Wikipedia afirma: Facebook está construido en PHP que se compila con HipHop para PHP. ‘transformador de código fuente’ creado por ingenieros de Facebook que convierte PHP en C ++. Según los informes, la implementación de HipHop redujo el consumo promedio de CPU en los servidores de Facebook en un 50%. Facebook – Wikipedia

Debido a que PHP es uno de los lenguajes de secuencias de comandos más rápidos hasta ahora y, sin embargo, es aproximadamente 30 veces más lento que C ++ cuando se utilizan estructuras de datos similares y los mismos algoritmos.

No querrían que se ejecutaran 30,000 servidores en lugar de 1000 donde sea posible el último escenario.

PHP es un lenguaje de secuencias de comandos, y los programadores de lenguaje fáciles pueden aprender y piratear Facebook fácilmente.

C ++ es un lenguaje seguro.

C ++ es más rápido. Mucho más rápido que PHP. Es por eso.

More Interesting

¿Por qué hay más trabajos remotos para Rails sobre Python / Django?

¿Qué lenguaje de programación es mejor para la programación web?

Cómo agregar dos colores separados para número y caracteres en un cuadro de texto usando JavaScript

¿Es posible hacer desarrollo web / programación de forma paralela como estudiante universitario?

¿Macbook Pro (finales de 2011) es bueno para Ruby on Rails y Swift Programming?

¿Qué es mejor JSP o Javascript?

¿Es aconsejable desarrollar un programa individualmente y divulgar el código a mis compañeros de curso? Además, ¿qué beneficios disfruta el desarrollador?

¿Cuántos enlaces son adecuados para tomar de un solo sitio web?

¿Qué es lo que no le gusta del nuevo diseño e interfaz web de LinkedIn?

¿Cuál es la mejor manera de averiguar si mi desarrollador ha utilizado AngularJS en el sitio web como me lo prometió? No soy un desarrollador web. ¿Hay algún truco del navegador que pueda usar para asegurarme de que el sitio web esté construido con AngularJS y PHP (ese era el requisito)?

¿Cuáles son los casos de uso de Thrift, es decir, qué razones hay para considerar el uso de Thrift cuando uno podría confiar en JSON y solicitudes HTTP estándar?

He completado series para principiantes en PHP y quiero ganar dinero en línea, ¿dónde puedo obtener un trabajo en línea de codificación PHP?

¿Cuáles son algunas ideas sobre el trabajo de desarrolladores de outsourcing en startups?

¿Cuál es el mejor complemento para un sitio web de mercado de comercio electrónico?

¿Qué marco es mejor para PHP YII o Codeigniter?