当本机的进程间通讯时,使用localhost(127.0.0.1)、本机IP 和 Unix Domain Socket 之间有什么区别以前理解比较模糊,今天看了一篇文章,终于高明白了,就是这篇文章,写的非常好:
简单的总结一下(指进程间通讯):
1、localhost(127.0.0.1)、本机IP 和 Unix Domain Socket 都是不走网卡的,这节省了网卡的IO。
2、localhost(127.0.0.1)和本机IP是一样的,虽然不走网卡,但是都要走内核的 TCP/IP协议栈,这带来一定的CPU开销。
3、Unix Domain Socket 不走内核协议栈,因此效率比 localhost(127.0.0.1)和本机IP都高。
使用socket进程间通讯,有很好的兼容和复用性,本机的socket进程间通讯,最好选用Unix Domain Socket。