首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >顺序vs多线程会计事件处理

顺序vs多线程会计事件处理
EN

Stack Overflow用户
提问于 2010-12-31 22:39:39
回答 3查看 610关注 0票数 1

我们正在开发一个事件驱动的会计引擎,到目前为止,我们正在以批处理/顺序的方式做所有的事情。

问题是,每天会创建数千个事件,按顺序处理所有事件会使处理速度变慢。

有没有一种安全的方法可以实现一个多线程的事件处理记账引擎,而不用担心财务数据的完整性和一致性?

或者只是为了安全起见,并允许采用批处理/顺序方法?

EN

回答 3

Stack Overflow用户

发布于 2010-12-31 22:46:12

也许您可能想研究一下软件事务内存模型。在这篇paper中已经讨论了这个概念

票数 2
EN

Stack Overflow用户

发布于 2011-01-02 04:13:04

您已经成功地构建了一个满足财务数据完整性和一致性需求的会计引擎。这样,将处理并行化应该是可行的。

你需要

  • 是一个新的dispatcher组件,它负责向多个线程提供要处理的事件数据,同时保持一致性(即,每个事件只有一次账单);
  • 是一个新的聚合器组件,用于多路复用账户上的分级事件。

通常,聚合器组件将成为并行体系结构中的瓶颈。

由于您明确地打算构建一个多线程应用程序:根据需求和环境,构建一个多进程设计可能是可行的,即有几个独立的进程并行运行。与进程间通信的实际需求相比,您将获得一个更简单的并发模型。

实际上,所有的电信计费系统都是通过多线程或多处理来扩展的,所以这绝对是一条明智的道路。

票数 1
EN

Stack Overflow用户

发布于 2010-12-31 22:48:03

如果您遵循以下规则,则可以使用多个并发事务

检查

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

对于您正在做的事情,使用正确的锁定级别

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4570646

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档