是否可以使用 ORM 构建微服务?

Posted

技术标签:

【中文标题】是否可以使用 ORM 构建微服务?【英文标题】:Is it possible to build microservice with ORM? 【发布时间】:2021-12-04 17:39:45 【问题描述】:

我想开始练习使用 Spring Boot 和 mysql 创建微服务。但对我来说有一个悬而未决的问题。如果可能的话,如果实体在单独的服务中,如何映射关系,如一对多或多对多关系?

【问题讨论】:

是的,您可以使用 ORM 构建微服务。 【参考方案1】:

是的,您可以在微服务中使用 ORM(为什么不呢?)。

每个微服务都应该有自己的私有持久性。因此,您不能跨服务进行数据库操作。如果您需要访问另一个服务拥有的实体,您的服务拆分可能过于细化。

【讨论】:

如果实体属于其他服务,如何映射外键? 要么只获取 ID 并通过询问其他服务来解决它(这可能会很慢而且很麻烦),或者如果您需要经常同时访问这两个实体,请加入这两个服务。

以上是关于是否可以使用 ORM 构建微服务?的主要内容,如果未能解决你的问题,请参考以下文章

构建微服务:如何优雅的使用mybatis

JAVA架构师之SpringBoot,SpringCloud构建微服务项目架构

使用 JWT 保护微服务之间的通信

客户端可以绕过API网关调用前端微服务吗?

SpringBoot 快速构建微服务体系 知识点总结

使用容器技术构建微服务架构