【发布时间】:2012-01-08 04:59:08
【问题描述】:
我正在使用 Java Realtime (Sun JRTS 2.2) 设计交易系统,想问几个关于最佳实践的问题,因为我害怕发明轮子,而且我很确定我的任务已经解决了。
所以我有线程持续读取套接字、解析字节和提取消息(二进制协议)。之后,我应该向算法发送消息,它实际上会进行一些计算并决定是否交易。
所以我认为我应该设计这个系统的方式是将它分成两部分。生产者(周期性(?)实时线程,从套接字中提取字节,解析它)和消费者(实时线程(周期性/零星?),从生产者那里提取消息,使用它们进行操作等)。
那么第一个问题是如何设计这两个线程(生产者/消费者)之间的高性能通信?我也很想听听 cmets 关于设计此类系统的现有经验、建议等。
感谢您的帮助!
【问题讨论】:
-
您知道实时并不一定意味着更快吗?
-
是的,我愿意。但我也应该注意垃圾收集器,高频率和低延迟。
标签: java multithreading real-time producer-consumer