He planeado usar dos idiomas de servidor. Uno para manejar solicitudes de E / S y otro para realizar las tareas, pero no estoy seguro de cómo puedo hacer que se comuniquen para hacer el trabajo.

Vea si está realizando IO usando python y realizando las tareas usando Ruby, entonces podría hacer algo como esto:
1) Siempre que almacene o extraiga algo de la Base de datos, use el lenguaje python / DB (SQL)
2) Realizar la función en él usando Ruby.

Por ejemplo: desea almacenar que un restaurante tiene 20 reseñas, lo almacena utilizando el código de Python + cualquier idioma de base de datos con el que lo conecte.
Ahora, si desea recuperar el recuento de la cantidad de comentarios de un restaurante en particular para que pueda realizar alguna función en él, así es como lo hará:

extract_value = Valor extraído de la base de datos. (Usando python / SQL)

# Método en Ruby

def perform_task (valor extraído)
Realizar la tarea requerida
valor de retorno
fin

Ahora, si desea almacenar el valor de retorno en DB nuevamente, continúe y hágalo usando el lenguaje python / DB (sql, etc.).

en general, mi idea es que puede usar node.js para atender la solicitud http y ejecutar php usando la función exec (). La mayoría de los lenguajes de programación permiten funciones exec.

otro enfoque es simplemente usar API: alojar un subdominio en otro servidor y crear rutas API y trabajar para una tarea específica. Sin embargo, puede compartir su Base de datos (nube) y ejecutar la solicitud de API desde el servidor principal.

sin embargo, no sé acerca de la escalabilidad de la aplicación.comment si tiene otras ideas para realizar tales operaciones.

Esto será útil https://thrift.apache.org