需求:A程序要求不能阻塞,低延迟。同时,有一个需求是从A程序得到的数据 ,写文件或者数据库。
写文件这个消费者必然消费的远慢于A程序,这里是把写文件 用来做线程还是进程。
线程的话,用无锁队列需要多个消费者线程,多个队列。如果有锁的队列的话,必然影响A程序(如果消费者使用锁,生产者便不能往有锁队列放数据)
所以,用进程的话 相对好点。两个程序之间,用共享内存通信,同时也能较大程度保证数据不丢失。
而A程序同样需要另外的线程 把数据放进共享内存