C# 使用localhost、127.0.0.1、计算机名和静态ip的差异
我想使用一个在本地机器上运行的web服务(不要问我为什么,我没有创建web服务,只需要使用它),我想知道通过localhost 127.0.0.1、计算机名称和计算机静态IP引用它是否有任何区别(技术和性能)?这很关键,因为我几乎每30秒就需要从数据库中的表触发器使用一次web服务(同样,不要问我为什么,在这种情况下我只能这么做)。web服务是在ASP.NET中编写的,从数据库访问它的对象是在C#.NET中创建的CLR用户定义函数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秒是一个糟糕的估计。这是一个事务表,在线保存了
编辑:对不起,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.130秒与“实时”相比确实是一段很长的时间,因此您使用的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服务已配置