GNU/Linux >> Tutoriales Linux >  >> Linux

¿Qué técnica Linux IPC usar?

Al seleccionar su IPC, debe considerar las causas de las diferencias de rendimiento, incluidos los tamaños de búfer de transferencia, los mecanismos de transferencia de datos, los esquemas de asignación de memoria, las implementaciones de mecanismos de bloqueo e incluso la complejidad del código.

De los mecanismos IPC disponibles, la elección del rendimiento a menudo se reduce a sockets de dominio Unix o canalizaciones con nombre (FIFO). Leí un documento sobre Análisis de rendimiento de varios mecanismos para la comunicación entre procesos que indica que los sockets de dominio Unix para IPC pueden proporcionar el mejor rendimiento. He visto resultados contradictorios en otros lugares que indican que las tuberías pueden ser mejores.

Cuando envío pequeñas cantidades de datos, prefiero canalizaciones con nombre (FIFO) por su simplicidad. Esto requiere un par de canalizaciones con nombre para la comunicación bidireccional. Los sockets de dominio Unix requieren un poco más de tiempo de configuración (creación de socket, inicialización y conexión), pero son más flexibles y pueden ofrecer un mejor rendimiento (mayor rendimiento).

Es posible que deba ejecutar algunos puntos de referencia para su aplicación/entorno específico para determinar qué funcionará mejor para usted. Según la descripción proporcionada, parece que los sockets de dominio de Unix pueden ser los más adecuados.

Guía de Beej para Unix IPC es bueno para comenzar con Linux/Unix IPC.


Yo optaría por los sockets de dominio de Unix:menos gastos generales que los sockets IP (es decir, sin comunicaciones entre máquinas) pero, por lo demás, la misma comodidad.


Linux
  1. Cómo usar BusyBox en Linux

  2. Cómo uso cron en Linux

  3. ¿Qué solución de copia de seguridad de código abierto utiliza?

  4. ¿Qué comando de terminal de Linux usas más?

  5. ¿Por qué usamos “./” (punto barra oblicua) para ejecutar un archivo en Linux/unix?

Use emoji al estilo de Mac en Linux

Cómo usar el comando grep en Linux/UNIX

Linux qué comando

¿Qué distribución de Linux usar después de Ubuntu?

Linux frente a Unix

Cómo usar el comando which en Linux