如果我向服务器的IP地址发出请求,是否与使用127.0.0.1相同或更慢?

我有运行memcached的应用程序服务器。

如果我向10.243.98.5上的memcached发出了一个请求,会发生什么情况,这恰好是源服务器? 它是否会使用与127.0.0.1相同的快速pathtcp / ip堆栈,或者通过检查10.243.98.5是否是相同的方框,并replace127.0.0.1来获得更好的性能

通常情况下,这并不重要,因为您希望在另一个应用程序服务器上的memcached中出现的可能性很大,但在这种情况下,负载平衡器会将请求分开,这样很可能大部分的memcached请求都会parsing为本地memcached实例。

您使用什么操作系统? 我会冒险猜测,并说这将是大致相同的性能使用任何一种方法,因为DNSlogging10.243 ….应该被caching。 你有没有尝试两种方式计时?

听起来像你已经知道答案;)。 在很多情况下,UNIX将使用:

http://en.wikipedia.org/wiki/Unix_domain_socket

Unix域套接字比TCP / IP / UDP更快,因为它们不涉及networking堆栈。 许多UNIX应用程序将使用Unix域套接字进行本地通信,例如数据库驱动程序或memcached。 这并不总是这样,你应该小心,不要把Unix域套接字与UDP混淆,这是完全不同的。

许多操作系统已经优化了回送接口。 有可能的是,数据包将会到达路由表,看到它是本地的,并且在同一台机器上按照快速path路由到input。 没有以太网驱动器,也没有ARP,也不会触及其他东西。

如果你看,可能你的MTU也会在回路上大得多。