C# 使用localhost、127.0.0.1、计算机名和静态ip的差异

C# 使用localhost、127.0.0.1、计算机名和静态ip的差异,c#,asp.net,web-services,sqlclr,C#,Asp.net,Web Services,Sqlclr,我想使用一个在本地机器上运行的web服务(不要问我为什么,我没有创建web服务,只需要使用它),我想知道通过localhost 127.0.0.1、计算机名称和计算机静态IP引用它是否有任何区别(技术和性能)?这很关键,因为我几乎每30秒就需要从数据库中的表触发器使用一次web服务(同样,不要问我为什么,在这种情况下我只能这么做)。web服务是在ASP.NET中编写的,从数据库访问它的对象是在C#.NET中创建的CLR用户定义函数 编辑:对不起,30秒是一个糟糕的估计。这是一个事务表,在线保存了

我想使用一个在本地机器上运行的web服务(不要问我为什么,我没有创建web服务,只需要使用它),我想知道通过localhost 127.0.0.1、计算机名称和计算机静态IP引用它是否有任何区别(技术和性能)?这很关键,因为我几乎每30秒就需要从数据库中的表触发器使用一次web服务(同样,不要问我为什么,在这种情况下我只能这么做)。web服务是在ASP.NET中编写的,从数据库访问它的对象是在C#.NET中创建的CLR用户定义函数


编辑:对不起,30秒是一个糟糕的估计。这是一个事务表,在线保存了近百家店铺的销售额。它的周期是可变的,从事务之间的几分钟到几毫秒。

没有实际的性能影响,但最快的应该是127.0.0.1和静态IP,因为在主机文件或DNS上不需要进行查找。因为你有一个30秒的窗口,这真的不重要。

没有真正的性能影响,但最快的应该是127.0.0.1和静态IP,因为没有在主机文件或DNS上进行查找。因为你有一个30秒的窗口,所以这真的不重要。

这是不同的

虽然所有四个权限名称都会导致TCP连接到同一主机,但区别在于HTTP:HTTP具有浏览器或客户端发送的“主机:”头,该头的内容是URI权限名称的主机名部分

主机头很重要,因为它是像IIS这样的Web服务器如何将请求路由到正确的网站,即使多个网站共享一个IP地址(HTTP1.1有主机头,HTTP1.0没有,所以在20世纪90年代中期,每个网站都需要自己的IP地址)

如果您的web服务在使用主机头的服务器上运行,或者如果它使用主机头本身,那么它确实很重要

性能方面的差异可以忽略不计,因为“localhost”和“%computername%”应该永久存储在DNS客户端的缓存中,但通常避免在应用程序中硬编码主机名。

存在差异

虽然所有四个权限名称都会导致TCP连接到同一主机,但区别在于HTTP:HTTP具有浏览器或客户端发送的“主机:”头,该头的内容是URI权限名称的主机名部分

主机头很重要,因为它是像IIS这样的Web服务器如何将请求路由到正确的网站,即使多个网站共享一个IP地址(HTTP1.1有主机头,HTTP1.0没有,所以在20世纪90年代中期,每个网站都需要自己的IP地址)

如果您的web服务在使用主机头的服务器上运行,或者如果它使用主机头本身,那么它确实很重要


性能方面的差异可以忽略不计,因为“localhost”和“%computername%”应该永久存储在DNS客户端的缓存中,但在应用程序中避免硬编码主机名是常识。

没有真正的区别,但它们都将转换为127.0.0.1,因此您最好先提供这一点


如果您查看您的主机文件,您可以看到localhost正在直接转换为127.0.0.1,这并没有真正的区别,但是它们都将转换为127.0.0.1,所以您最好先提供这一点


如果您查看您的主机文件,您可以看到localhost正在直接转换为127.0.0.1

30秒与“实时”相比确实是一段很长的时间,因此您使用的IP将不会有任何区别,并且对您的应用程序是透明的。

30秒与“实时”相比确实是一段很长的时间因此,您使用的IP不会有任何区别,并且对您的应用程序是透明的。

这取决于web服务的公开位置(侦听)

localhost
127.0.0.1
将通过内部localhost界面与它联系。另外两种方法将查找特定网卡上的服务

从性能角度来看,使用IP地址要快一点,因为它避免了DNS查找,而在这种情况下,DNS查找将在本地解决,并且几乎是即时的。(30秒是相对无限的,因此这不能成为瓶颈。)

从维护的角度来看,静态IP地址最有可能影响您


获胜者:
127.0.0.1
localhost

这取决于web服务的公开位置(监听)

localhost
127.0.0.1
将通过内部localhost界面与它联系。另外两种方法将查找特定网卡上的服务

从性能角度来看,使用IP地址要快一点,因为它避免了DNS查找,而在这种情况下,DNS查找将在本地解决,并且几乎是即时的。(30秒是相对无限的,因此这不能成为瓶颈。)

从维护的角度来看,静态IP地址最有可能影响您


获胜者:
127.0.0.1
localhost

对不起。这是一个糟糕的估计。这是一个实时事务表,在线保存了近百家商店的销售额。对不起。这是一个糟糕的估计。这是一个实时事务表,其中在线保存了近100家商店的销售额。那么,您的意思是如果web服务分配了主机名,我必须指定一个主机名吗?是的。如果您的web服务配置为仅响应“localhost”,则连接到将不起作用,因为主机头将设置为“127.0.0.1”,而不是“localhost”。因此,您的意思是,如果web服务已分配主机名,我必须指定一个主机名吗?是的。如果您的Web服务已配置