我需要一些帮助来评估扭曲矩阵应用程序的正确设计。或任何帮助这样做的网址。
- 背景:我现在使用twistedmatrix附带的日志记录能力
FileLogObserver
,以及一个自定义DailyLogFile
来将数据传播和保存到文件系统并供以后分析。
现在,我将使用许多不同的应用程序来完成它们的工作,并在许多文件扭曲日志(不同的文件)中将日志消息作为定时事件发送。因此,我的事件由(timestamp, data)
我需要某种方式实时读取每条记录的消息(timestamp, data)
,并按时间集中事件对它们进行分组,即对具有完全相同时间戳的所有事件进行一些计算和分组。
我是否正确地假设我可以使用扭曲的日志功能来做到这一点?
您将如何以简单的方式设计它?
我目前的想法是构建一个套接字扭曲记录器并复制记录过程,以便每个事件都将发送到文件记录器(我需要单独的历史记录),但也通过套接字发送到接收器(我现在也需要实时)。如果我以这种方式进行挖掘是正确的,那么是否有人有这种扭曲套接字记录器的骨架?我如何从扭曲中链接两个记录器?
另一方面,正确的记录器接收器应该是什么?
因为我还将使用以下方案通过 lightstreamer 服务器传播计算/聚合数据,是否存在一些我可能没有看到的困难,这将需要一些线程机制或其他机制来避免一些阻塞网络调用?
feed = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
feed.connect(("localhost",MYPORT))
feed.send(mytimestamp, myeventdata)
作为一个数字,它可以被模式化为:with (everything about realtime)
producerTimedEventLog1 --->|
producerTimedEventLog2 --->|
... |---> loggerReceiverComputingData ---> lighstreamer process ---> mozilla or whatever webclient
... |
producerTimedEventLognN--->|
每个 producerTimedEventLognN 也记录到一个文件。
我对每一个有用的想法都感兴趣:)
此致