Para dar otra alternativa, una que en realidad podría incluso ayudarlo mucho si tiene que hacer varios cálculos a la vez que podrían ejecutarse en paralelo, es usar Gearman.
Gearman se encargará de hablar con C++ y podrá ejecutar múltiples cálculos al mismo tiempo. Gearman en sí mismo es simplemente un componente que le permite hablar con él como un servidor de tareas y usted escribe a los trabajadores que se conectan a él para ejecutar el trabajo real. Esto también le permite ampliar, decir que tiene algo grande que calcular, puede iniciar 20 instancias de AWS EC2 y ejecutar a los trabajadores allí para el levantamiento pesado, luego apáguelos después de que haya terminado.
Para un mejor rendimiento, si es sencillo y no se necesita una ejecución en paralelo, usaría el enfoque de Crashworks al 100%, o podría mezclar los dos.
La forma más fácil sería simplemente compilar un C++ ejecutable e invocarlo desde PHP. –
¿Qué función usaría? Además, ¿cómo pasa PHP los datos a C++? –
Llámalo con argumentos. No estoy seguro de si hay algo que te diga el valor de retorno de main(). editar: parece que 'exec' tiene esa capacidad. – chris