RK3568下的进程间广播通信:用C语言构建简单的中心服务器
最近的项目中需要实现这样一个功能,就是一个进程A发消息,进程B和进程C都能收到相同的消息,同样,进程B发消息,进程A和进程C也都能收到消息,就像下图中的描述。
使用一个中心服务器作为消息转发枢纽,所有客户端连接到服务器,发送消息到服务器后,服务器再将消息转发给所有其他客户端。
查询了一些开源的库,甚至还想在本地搭建一个MQTT来实现,最后觉得 ,还是造轮子吧,手搓一个更容易,先实现功能,以后优化的时候看看再选用别的方案,或者怎么着。
引言
使用TCP实现,TCP(传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议。它通过三次握手建立连接,四次挥手关闭连接,保证了数据传输的可靠性和顺序性。使用C语言实现一个简单的TCP聊天服务器是理解网络编程基础概念的绝佳方式——不仅能掌握套接字(Socket)编程的核心流程,还能学习多线程如何协同处理并发连接。
包括服务器端(`server.c`)和客户端(`client.c`)代码,
server.c的完整代码