Rendimiento de sockets unix vs puertos TCP

47

Por ejemplo en php-fpm:

#listen = 127.0.0.1:9000
listen = /var/run/php-fpm/php-fpm.sock

¿Existe alguna diferencia de rendimiento importante entre el uso de escuchas basados ​​en socket Unix a través de puertos TCP? (No solo para PHP sino en general. ¿Es diferente para cada servicio?)

Jason
fuente

Respuestas:

25

Cuando está utilizando TCP, también está utilizando toda la pila de red. Incluso si está en la misma máquina, esto implica que los paquetes están encapsulados y desencapsulados para usar la pila de red y los protocolos relacionados.

Si usa sockets de dominio Unix, no se verá obligado a pasar por todos los protocolos de red que se requieren de lo contrario. Las tomas se identifican únicamente por los inodes en su disco duro.

Silverrocker
fuente