命名管道和套接字的区别
精选 转载在快速局域网 (LAN) 环境中,传输控制协议或 Internet 协议 (TCP/IP) 套接字客户端和命名管道客户端在性能方面不相上下。但是,网络速度越慢(如在广域网 (WAN) 或拨号网络上),TCP/IP 套接字客户端与命名管道客户端的性能差异越明显。这是因为进程间通讯 (IPC) 机制在对等项间的通讯方法不同。
对于命名管道,通常网络通信交互性更强。一个对等项直到另一个对等项使用读取命令请求数据时才发送数据。在开始读取数据前,网络读取一般包括一系列窥视命名管道的信息。这在慢速网络中可能花费非常多并导致过多的网络流量,其它的网络客户端反过来也会受到影响。
阐明所讨论的是本地管道还是网络管道也很重要。如果服务器应用程序在运行 Microsoft® SQL Server® 2000 实例的计算机上本地运行,则可以选择本地命名管道协议。本地命名管道以内核模式运行且速度非常快。
对于 TCP/IP 套接字,数据传输的效率更高,开销也更少。数据传输还可以利用 TCP/IP 套接字性能增强机制的优点,如开窗口、延迟确认等,这在慢速网络中可能非常有益。对于应用程序的不同类型,这类性能差异可能非常大。
TCP/IP 套接字还支持待办事项队列,当试图连接到 SQL Server 时,与可能导致管道忙错误的命名管道相比,该队列可以提供有限的平稳效果。
一般情况下,套接字在慢速 LAN、WAN 或拨号网络中效果较佳,而当网络速度不成问题时命名管道则是更好的选择,因为其功能更强、易于使用且提供多种配置选项
上一篇:用递归法实现倒序
![](https://ucenter.51cto.com/images/noavatar_middle.gif)
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
Java套接字编程学习
Java套接字编程学习
Socket -
Linux 管道和命名管道
named piped in Linux.
linux pipe -
进程通信:匿名管道和命名管道
一、进程间通信方式管道( pipe ):管道是一种半双工的通信方式,数据只能单向流动,
通信 数据 命名管道 消息队列 共享内存