问题标签 [named-pipes]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
10437 浏览

sql-server - SQL Server 2005 - 启用命名管道和 TCP/IP 协议?

我们有一个 SQL Server 2005 数据库,目前我们所有的用户都通过 TCP/IP 协议连接到数据库。

SQL Server 配置管理器允许您同时“启用”命名管道和 TCP/IP 连接。这是一个好主意吗?我的问题不是我们是否应该使用命名管道而不是 TCP/IP,而是启用两者是否存在相关问题?

我们客户的一位 IT 人员说,启用两种协议的数据库通信将限制任何一种协议可以使用的带宽 - 大约为总带宽的 50%。我认为 TCP/IP 可以使用的带宽将直接(反向地)与命名管道(或任何其他类型的流量)当时在网络上占用的流量量相关联。但是,这位 IT 人员表示,我们在服务器上启用了两种协议,人为地限制了 TCP/IP 可以使用的带宽。它是否正确?

我做了谷歌搜索,但无法找到这个问题的答案。任何帮助,将不胜感激。

0 投票
4 回答
7700 浏览

shell - 从 shell 写入 fifo/pipe,超时

我有一对通过命名管道进行通信的 shell 程序。阅读器在启动时创建管道,并在退出时将其删除。

有时,写入者会在读取器停止读取和移除管道之间尝试写入管道。

发生这种情况时,作家将永远挂起,试图打开管道进行写作。

有没有一种干净的方法可以让它超时,这样它就不会一直挂起,直到被手动杀死?我知道我能做到

但这有点恶心。是否有内置的 shell 或命令可以更干净地执行此操作(不破坏 C 编译器)?

0 投票
4 回答
14525 浏览

asp.net - 奇怪的间歇性 SQL 连接错误,重新启动时修复,3-5 天后恢复 (ASP.NET)

出于某种原因,每 3-5 天,我们的 Web 应用程序失去打开与数据库的连接的能力,并出现以下错误,奇怪的是我们所要做的就是重新启动容器(它是一个 VPS)并恢复它到正常功能。然后几天后,它再次发生。有没有人遇到过这样的问题?我在半夜从我们的 AD 服务器注意到安全日志中有很多匿名登录,这很奇怪,还有一些来自阿姆斯特丹的 IP。我不确定如何说出它们的确切含义,或者它是否相关。

0 投票
7 回答
7015 浏览

named-pipes - 在 Windows 中枚举命名管道

我无法连接到命名管道(在本例中为快速 cgi 命名管道)根据 MSDN,我应该使用 CreateFile() 或 CallNamedPipe() (平面 C API,同步 - 无重叠 I/O) http:/ /msdn.microsoft.com/en-us/library/aa363858(VS.85).aspx

然而我得到 INVALID_HANDLE_VALUE 并且当我 GetLastError() 它为零!?

我也想知道我是否可以用. 某种调用,然后解析出我正在寻找的那个:“\.\pipe\FastCGI\”

有没有人有这些评论的经验:http: //blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/225878

0 投票
1 回答
4386 浏览

pipe - 使用同步 NamedPipes 同步读写

命名管道服务器是用

然后我们立即调用:

在客户端连接之前阻塞。

然后我们直接进入 ReadFile( hPipe, ...

问题是客户端需要有限的时间来准备和写入所有 fcgi 请求参数。这通常在 Pipe Server 执行其 ReadFile() 之前尚未完成。因此,读取文件操作在管道中找不到任何数据,并且该过程失败。

在客户端连接到 NamedPipe 后,是否有一种机制来判断 Write() 何时发生/完成?

如果我可以控制客户端进程,我可以使用一个普通的互斥锁,但我没有,我真的不想为了解决这个问题而进入 I/O 完成端口!

我当然可以使用一个简单的计时器来等待 60m/s 左右,这通常是足够的时间来完成写入,但这是一个可怕的 hack。

0 投票
5 回答
482 浏览

wcf - 除了 RESTful HTTP,我还应该支持什么吗?

我正在为我公司的 CRM 软件开发基于 WCF 的 API。未来,它将用于在多个平台上开发应用程序。我知道 WCF 提供命名管道、TCP 和 HTTP 传输,但是当现在一切似乎都在使用 RESTful HTTP 时,我是否应该为支持所有这三种传输的复杂性而烦恼?

0 投票
1 回答
2006 浏览

windows-services - 不同用户会话中 Windows 服务和应用程序之间的通信

我有以下情况:

具有多个用户会话的 Windows Server 环境。

Windows 服务正在侦听众所周知的端口。

每个用户会话中的托盘应用程序自动启动。

Silverlight (SL) 应用程序在浏览器中运行,并使用套接字和预定义端口与 Windows 服务进行通信。

我的目标如下:用户与 SL 应用程序交互,SL 应用程序使用套接字与 Windows 服务通信,然后 Windows 服务应与位于同一用户会话中的适当托盘应用程序通信,例如发起调用的浏览器。

Windows 服务和托盘应用程序之间的通信计划使用命名管道来完成。

问题:如何定义/传输命名管道的名称到 Windows 服务以建立正确的(Windows 服务 -> 正确用户会话中的托盘应用程序)连接?

0 投票
5 回答
31424 浏览

unix - 一个标准的 Unix 命令行工具,用于连接到套接字

我有一些应用程序和标准 Unix 工具将它们的输出发送到 Solaris 中的命名管道,但是命名管道只能从本地存储(在 Solaris 上)读取,因此我无法通过网络访问它们或放置管道在 NFS 存储上,以通过网络访问其输出。

这让我想知道是否有类似的方法可以将命令行工具的输出直接转发到套接字,比如:

0 投票
1 回答
40585 浏览

c - 如何在命名管道 (mkfifo) 上执行非阻塞 fopen?

如果我有一个程序使用 mkfifo 创建并尝试打开命名管道,我如何打开管道进行读取或写入而不阻塞?

具体来说,我正在编写一个可以在有或没有 gui(用 Java 编写)的情况下运行的 C 程序。

在 C 程序中,我使用 mkfifo 成功创建了命名管道,但是当我这样做时

在 GUI 打开该管道进行写入之前, fopen 不会返回。我想要做的是让该管道准备好读取一次(如果)GUI决定写入它 - 我将把文件描述符放在 select() 调用中。可以合理地预期 java GUI 可能永远不会真正启动,因此我不能依赖它在任何特定点甚至根本无法打开管道的另一端。

我还将打开第二个管道进行写作,我想我也会遇到同样的问题。此外,我无法在没有阅读器的输出管道上设置 O_NONBLOCK。

有什么建议么?

(这是在linux系统上运行的)

0 投票
1 回答
1889 浏览

ipc - 在 posix 的命名管道上让许多进程写入单个读取器是否会产生影响?

我正在为 POSIX (OSX) 编写一个程序,其中我将有许多进程向一个侦听器发送消息,该侦听器本质上是一个日志记录线程。所有进程都在单独的程序中运行,并且使用许多进程写入但只有一个进程读取的单个命名管道 (FIFO) 非常诱人。

问题:

1)这会工作吗?- 我可以使用 bash 设置一个具有多个写入它的进程的 fifo 来完成这项工作,所以我知道理论上这是可行的。但在实践中,有没有我在掩饰的问题?

外壳 #1

贝壳 #2 和 #3

2)如果每个作者只写相对较短的消息(< 100 字节?),那么我可以假设每个对 write() 的调用都会完整地发送给读者吗?或者,一条消息的一半是否会与来自不同作者的另一条消息的一半存在混淆?

感谢您的任何建议。