私たちはイベント駆動型の会計エンジンに取り組んでおり、これまでのところすべてをバッチ/シーケンシャルに行っています。
問題は、1 日に何千ものイベントが作成され、すべてを順番に処理すると処理が遅くなることです。
財務データの整合性と一貫性を心配することなく、マルチスレッド イベント処理会計エンジンを実装できる安全な方法はありますか?
それとも、安全にプレイして、バッチ/シーケンシャル アプローチに従うことを許可する方がよいのでしょうか?
私たちはイベント駆動型の会計エンジンに取り組んでおり、これまでのところすべてをバッチ/シーケンシャルに行っています。
問題は、1 日に何千ものイベントが作成され、すべてを順番に処理すると処理が遅くなることです。
財務データの整合性と一貫性を心配することなく、マルチスレッド イベント処理会計エンジンを実装できる安全な方法はありますか?
それとも、安全にプレイして、バッチ/シーケンシャル アプローチに従うことを許可する方がよいのでしょうか?
おそらく、ソフトウェアのトランザクション メモリ モデルを調べたいと思うかもしれません。コンセプトはこの記事で説明されています
あなたはすでに、財務データの整合性と一貫性の要件を満たす会計エンジンの構築を管理しています。これにより、処理の並列化が可能になるはずです。
あなたが必要になるでしょう
通常、アグリゲーターコンポーネントは、並列アーキテクチャーのボトルネックになります。
マルチスレッドアプリケーションを明示的に構築することを意図しているため:要件と環境によっては、マルチプロセス設計を構築できる場合があります。つまり、複数の独立したプロセスを並行して実行します。プロセス間通信の必要性に比べて、より単純な同時実行モデルが得られます。
事実上すべての電気通信課金システムは、マルチスレッドまたはマルチプロセッシングによって拡張されるため、これは間違いなく順調な方法です。
ルールに従えば、複数の同時トランザクションを使用できます
en.wikipedia.org/wiki/Atomicity_(database_systems)
en.wikipedia.org/wiki/ACID
en.wikipedia.org/wiki/Record_lockingをチェックしてください
または、このセクションのすべての関連記事を読む
http://en.wikipedia.org/wiki/Category:Transaction_processing
あなたがしていることのための正しいレベルのロックで