建立了一个新的系统,逐步承担旧系统的责任。两者在生产中合作。
为了促进这一点,它们共享一个复制的域对象模型。两者都使用相对原始的内存对象存储。遗留系统是规范存储,其中的每一项更改都通过 ESB 复制到新系统。新系统可能会修改一些对象,旧系统会轮询这些对象并更新其主数据。
这两个系统有时可能会调用另一个 API 端点来发出命令,但通常通过修改共享对象来隐式地传达此类命令。
没有事务或批量更新的概念。新系统使用全局写锁来处理其内存存储中的所有更新和刷新对象引用。数据集的大量删除或插入,或者顺序对象图的构建或删除可能会占用新系统的全局写锁。它脆弱、缓慢且难以开发和测试。
遗留系统是用 C++ 构建的,而新系统是用 Java 构建的。这也增加了一个对象转换层。
我的任务是提高稳定性和性能。我将其视为数据库复制问题,并希望利用已建立的文献和开源产品,但我正在努力对其进行描述。
什么标准拓扑在这里最适用?