当前位置: 首页 > 知识库问答 >
问题:

微服务数据访问层和开发人员维护

阴高寒
2023-03-14

当条目发生更改时,我们希望在SQL数据库中添加一个UpdateDatetime列。

在微服务架构中,(a)所有3个访问表的服务现在都需要在其API中包含Updatedate吗,(b)或者微服务会共享同一个数据访问层吗?

如果是字母(a),他们有什么方法可以使开发更容易吗?

我们正在询问与微服务相关的开发人员维护,因为我们可能有 10 个应用程序与 1 个表交互。如果添加的表或列中有错误,我们需要通过 10 个应用位置查看/修改代码,而不是面向服务的体系结构中的 1 个位置。

共有1个答案

谢昂雄
2023-03-14

这个问题有点离题,因为(a)中的图表实际上没有太大意义,但考虑到领域和我的理解。我认为正确的解决方案是,在这种情况下,您将拥有与其他微服务、客户管理、仓库管理和订单履行相同级别的订单服务。总共有四个微服务。

创建订单后,它可以将消息传播到消息总线,在那里,其他三个有兴趣为订单提供服务的服务将获取事件并相应地更新订单。如果有不同的步骤来完成订单,您也可以使用类似于队列的方法来完成订单。在队列中,订单从一个主题移动到另一个主题,相应的服务将相应地对其进行更新。

 类似资料:
  • 到目前为止,我们正在将我们的spring boot monolith迁移到自包含的微服务,并已在端口8999上的一个单独服务中安装和配置了Key斗篷,包括其登录ui。其他Spring Boot服务(包括它们的ui)在端口8080、8082等上运行。 为了加快开发速度,我们希望创建一个本地Docker设置,该设置能够作为我们服务架构的一个可集成的完整设置。这样我就可以在localhost上启动任何服

  • 我在这个链接的页面中实现的service worker演示有一些问题。我试着为这个演示尽可能地减少代码,但是粘贴到这里太长了。 一个问题是,当页面完全加载时,我转到Chrome devtools的“应用程序”选项卡,我在缓存中看到了很多内容: 不清楚为什么有这么多缓存...可能是我正在加载的字体,但仍然...似乎很大。 更令人担忧的是,当我单击该部分中的按钮(所有选项均已打勾)时,饼图中红色的部分

  • 让我们讨论一下微服务环境的体系结构。我们正在公司内部进行讨论,我想得到一些反馈。我认真考虑的是编排层(代码复制、更多移动部件改变api)。 网络应用- 原料药- 在这种情况下,服务不允许相互对话。业务流程层中的聚合服务 网络应用- 原料药- 这里允许服务相互对话,这里存在聚合服务。 账单属于哪里

  • 本文向大家介绍测试人员和开发人员区别?相关面试题,主要包含被问及测试人员和开发人员区别?时的应答技巧和注意事项,需要的朋友参考一下 ①人员不同 测试:开发人员和测试人员 开发:只有开发人员 ②所处阶段不同 测试:贯穿整个软件开发生命周期 调试:在软件开发编码阶段以及测试过程中对BUG进行调试 ③对bug处理结果不同 测试:只找出错误,不解决 调试:找出错误并解决

  • 我有两个不同的微服务,将尤里卡作为服务注册表,现在我正在尝试从另一个微服务调用微服务,解析带有功能区的endpoint以进行客户端负载平衡。 服务A: 此服务公开一个终结点,并且应用程序.yml 如下所示: 调用服务A的服务B具有以下应用程序类: 控制器 服务 但我在尝试访问服务时遇到了一个异常: 对此有什么建议吗?

  • 问题内容: 与我的其他问题有些相关,是否应该从数据访问层(或接口)返回原始的Hibernate注释POJO?,我在创建很好的解耦层方面很有经验,但是没有使用Hibernate或J2EE/JPA。我一直在看文档和教程,却对如何以一种优雅的方式使用EntityManger感到困惑,因为它似乎既负责事务(我想在服务层上做)又负责持久性方法(我想要做)保留在数据访问层中)。我应该在服务层创建它,然后将其注