[英]Pub/Sub for Postgres JSON field in Rails
我在名为Quote的模型上有一个名为data的字段。 列类型是一个JSON对象,它存储可能引用其他字段的各种字段。 我需要使这些相关字段以及其他模型保持同步。
例如,随时更新income.residential_income.total或income.commercial_income.total时 ,需要更新income.total 。 后端是否应该更新所有相关字段? 前端跟踪这些更改并向后端提供数据是否有意义? 我可以使用pub / sub来监视同一模型上的多个字段以更新这些关系吗? 我不清楚实现此功能的最好的最简单方法是什么。
income: {
total: 250
residential_income: {
total: 100
},
commercial_income: {
total: 150
}
}
当您说PUB / SUB时,我假设您是在谈论postgres的LISTEN / NOTIFY功能? 我不会在您的情况下使用它,当监听进程崩溃,尚未启动,无法重新启动,无法访问时,很容易失去同步。
使用触发器并更新数据库中的字段
要么
让代码更新两个收入字段之一,然后计算总数。
要么
首先不存储总计,并在需要时进行计算
由于收入值是通过前端更改的,因此您可以轻松地同时更新总计。 这将确保DB中的值与应用程序同步(在缓存时很重要),并确保尽可能少的复杂性。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.