当 rpc(如 Java RMI 或某种 Web 服务调用)或消息队列(如 JMS)是更好的解决方案时,暂存表是否是一种反模式,或者暂存表是否可以更好地解决问题?
澄清:
暂存表是指记录由一个或多个进程附加到一个或多个表的情况,然后由第二个或多个进程读取并对其进行操作。我不是指那些旨在反映间隔结束状态(一天结束、支付期结束等)的表格。在大多数情况下,登台表的模式非常模仿应用程序数据类型,例如客户或帐户。
这种反模式的潜在原因:
1) 两个进程的所有者之间的业务单元墙可防止写入或读取暂存的进程被修改。
2) 对 staging 写入或读取的进程信心不足,导致开发人员使用 table 来防止“以防万一发生故障”的数据丢失
3)缺乏知识或DGAS(不要给^%$@)态度