上下文
我编写了一个软件,可以实时读取在线市场数据,并将其写入磁盘。每个安全性都通过多线程自定义排队后台工作程序写在一个文件中。
Worker_Q_Security_A> File_A(附加)
市场数据> Worker_Q_Security_B> File_B(附加)
Worker_Q_Security_C> File_C(追加)
为每条消息创建一个工作人员实例并排队,以减轻实时读取器的负担并避免该级别的瓶颈。
问题
现在发生的事情是,随着数据量的增长,我收到的数据更快,我正在编写。这导致工作人员队列增长,并且书面数据被越来越多地延迟。
有哪些建议可以帮助提高速度性能,使写入速度更快,延迟更低,并避免写作工作者的瓶颈?
编辑:
我正在使用Pooya Khamooshi QueuedBackgroudWorker的定制版本
我不知道如何设计一个能够通过到达顺序将刻度写入委托给线程系统的体系结构,并且避免为每个tick创建一个worker。