相关疑难解决方法(0)

哪个更适合本地IPC,POSIX消息队列(mqueues)或Unix域(本地)套接字?

使用POSIX消息队列或Unix域套接字进行本地IPC通信是否更好?

我曾经在机器之间使用Unix套接字(不是域名),我记得制作和断开连接会导致套接字在最终消失之前停留一段时间.此外,如果您想要"可靠"的交换,您必须使用TCP或设计应用程序以返回ACK.我不确定这是否也适用于Unix域套接字.

在我目前的项目中,我们需要本地IPC.我的第一反应是使用POSIX MQueues,因为我之前使用它们进行本地消息传递.但是,一位同事正在建议使用Unix域套接字.

是一个比另一个更好,还是编程熟悉的问题?或者它可能取决于正在创建的应用程序?

从总体上看,我们正在开发的应用程序遵循客户端/服务器模型.客户端向服务器发送消息以"做某事".但是,客户端不会等待"完成"响应 - 尽管他们确实想知道他们的请求是否已被接收.

发送方的基本逻辑是:

connect to server
send request
note if the send worked or not
disconnect from server
Run Code Online (Sandbox Code Playgroud)

一台服务器可能有数百个客户端.

我们正在运行Linux操作系统的SMP系统(4-8个核心)上执行.

提前致谢.

c c++ sockets posix ipc

22
推荐指数
2
解决办法
1万
查看次数

标签 统计

c ×1

c++ ×1

ipc ×1

posix ×1

sockets ×1