为了提高服务器的并发性能,除了使用程序优化技术,多线程并发技术外,还可以用多进程并发技术。
而涉及到多进程并发技术,往往需要进行进程间高效数据通信技术;
Linux系统为程序开发提供了多种进程间通信技术,
包括有信号,进程间socket, 信号量,匿名管道,命名管道,共享内存。
本文介绍一种基于命名管道和共享内存的进程间通信方法;
整体原理图如下:
主要组成部分如下:
DataQueue Producer: 是数据的生产者,它除了生产数据外,还生成信令;
DataQueue Consumer: 是数据的消费者;
共享内存: 是Linux系统的共享内存,由它组成进程间数据传输的队列;
命名管道: 是Linux系统的命名管道,它是用来做信令的通道,用于生产者通知消费者进行数据消费;
工作机制如下:</