事件处理与持久化策略解析
在软件开发中,事件处理和对象持久化是至关重要的环节。不同的方法和策略各有优劣,下面我们将详细探讨几种常见的事件处理方式以及一种独特的对象持久化方法——事件溯源。
1. 扁平文件结构的优缺点
采用扁平文件结构来存储事件日志时,需要明确规定单个日志文件中应写入的事件数量,以及文件在磁盘上的布局方式。操作系统对单个目录下可容纳的文件数量有限制,即便系统能够在单个目录中存储大量文件,这些限制也会降低访问速度。不过,类似于电子邮件服务器所采用的分层结构方法,可以显著提高扁平文件的访问速度。
与关系型数据库相比,扁平文件和目录布局的大量存在,使得篡改内容的可能性降低。若这不足以起到威慑作用,还可以通过确保文件系统的安全访问来实现。
2. 事件消费的 REST 方式
无论选择何种存储方式,都可以通过 REST 来消费事件,主要有以下两种方式:
2.1 订阅者轮询
订阅者可以通过简单的轮询来获取日志资源,示例如下:
GET /streams/{name}/1-20
GET /streams/{name}/21-40
GET /streams/{name}/41-60
GET /streams/{name}/61-80
GET /streams/{name}/81-100
GET /streams/{name}/101-120
其中, {name} 需替换为要读取的流的名称,例如 underwriting
超级会员免费看
订阅专栏 解锁全文

1708

被折叠的 条评论
为什么被折叠?



