1

RS-232 デバイスを制御し、アクションをファイルに記録するサービスがあります。ログ ファイルを 1 行ずつ読み取り、データベースに対していくつかのクエリを実行してから、すべてのログを削除する別のサービスを作成します。

私の懸念は、ファイルの読み取りと書き込みの競合です。たとえば、ロガー サービスがファイルを開いて新しい行を追加するのと同時に、レプリケーター サービスがファイルを開いて "" を書き込むので、その内容を切り捨てます。

私の状況を明確にするための提案はありますか?

4

2 に答える 2

1

「読み取り」サービスを変更して、最初にファイルの名前を変更するのはどうですか(ファイルの前に「_」を付けるのが私が通常行うことです)。そして、完了したら削除できます。ログファイルが存在しない場合、書き込みサービスはログファイルを作成する必要があります。このようにして、データの損失をゼロにする必要があります。

于 2010-02-05T21:18:30.653 に答える
0

ファイルの使用に縛られていない場合、ユース ケースは、ログ メッセージを渡すためのメッセージ キューを提案します。

于 2010-02-05T22:31:20.780 に答える