Cómo Integrarse con Otros Marcos
Pregunta:
¿Cómo integrarse con otros marcos MVC (ThinkPHP, Yii, etc.)?
Respuesta:

La forma recomendada de combinar con otros marcos MVC es la ilustrada en la imagen anterior (Tomando ThinkPHP como ejemplo):
-
ThinkPHP y Workerman son dos sistemas independientes, que se despliegan por separado (pueden estar en diferentes servidores), sin interferirse entre sí.
-
ThinkPHP proporciona páginas web utilizando el protocolo HTTP para su renderizado y visualización en el navegador.
-
El js de la página proporcionada por ThinkPHP inicia una conexión websocket, conectándose a Workerman.
-
Una vez conectada, se envía un paquete de datos a Workerman (que incluye el nombre de usuario, la contraseña o algún tipo de cadena token) para verificar a qué usuario pertenece la conexión websocket.
-
Solo cuando ThinkPHP necesita enviar datos al navegador, se llama a la interfaz socket de Workerman para realizar el envío.
-
El resto de las solicitudes aún se manejan según el método HTTP original de ThinkPHP.
Resumen:
Considera a Workerman como un canal para enviar datos al navegador, llamando a las interfaces de Workerman únicamente cuando se necesite enviar datos al navegador. La lógica comercial se completa completamente en ThinkPHP.
Para saber cómo ThinkPHP llama a la interfaz socket de Workerman para enviar datos, consulta la sección Ver Preguntas Frecuentes - Enviar Desde Otros Proyectos.
ThinkPHP ya ha agregado soporte para Workerman, consulta el Manual de ThinkPHP5