将大字节流缓冲区发送到另一个进程

时间:2012-11-30 17:18:28

标签: windows service rpc

假设两个进程都作为Windows服务运行,将字节流从一个Windows进程发送到另一个进程的最佳方法是什么?数据由图像缓冲区组成。每个服务都在同一子网上的单独服务器上运行。

接收缓冲区的第二个服务是否应该是Web服务(而不是Windows服务),即使它永远不会在网站上调用(仅在内部)?

RPC是在两个Windows服务之间传递数据的最佳方法吗?将传递大量数据并且性能至关重要。

开发语言是C#4.0

2 个答案:

答案 0 :(得分:1)

我建议使用套接字。 RPC在套接字上有轻微的开销,除非发送结构化数据,否则不值得努力。

答案 1 :(得分:0)

如果性能是关键,则使用共享内存段。在MSDN上查找CreateFileMappingMapViewOfFile。您可以从http://msdn.microsoft.com/en-us/library/windows/desktop/aa366551(v=vs.85).aspx

处提供的恰当名称“创建命名共享内存”开始