假设我在localhost中运行了两个独立的Go程序,TCP是在性能方面在两个程序之间传输数据的最佳方法吗?
答案 0 :(得分:1)
简短的回答是否定的。 TCP / IP堆栈很慢,尤其是TCP部分。因此,在性能方面,您最好使用本地进程间通信方法,例如应用程序或Unix套接字之间的共享内存。
如果您必须使用网络堆栈进行通信(例如,您计划在主机之间移动应用程序),则UDP或原始套接字是性能方面的最佳选择。
只有你:
因此,请完成您的要求,并确定它是否是适合您的最佳方法。
答案 1 :(得分:0)
它可以工作并提供额外的自由,让两个程序在不同的计算机上运行。但就性能而言,它并不是最好的。
为了获得良好的性能,我想到了共享内存。 https://en.wikipedia.org/wiki/Shared_memory 也许你可以更准确地描述你想要做什么。