【发布时间】:2015-03-06 15:59:43
【问题描述】:
在设计一个使用 Kafka 来分离/并行工作单元的系统时,我发现我有 2 个选择:
Data -> manipulate data -> store in DB -> send ID as message -> load data from DB using ID in message ->...
Data -> manipulate data -> send data as message -> load data from message ->...
第二个选项摆脱了在数据库中保存和加载数据的所有副作用代码,如果我这样做,那么我的代码会更好,我的单元有时可以成为一个纯函数。我也减少了数据库的负载。缺点是此消息可能很大,而消息传递系统通常设计为快速处理小消息。
我的问题是:
- 在什么时候(多少字节),对于 Kafka 而言,消息开始显得有点大?
- 还有哪些其他优点和缺点需要考虑?
【问题讨论】:
标签: architecture messaging apache-kafka