针对六边形体系结构的MySQL(加上Redis)实现上的单个查询或连接
我正在开发一个六边形架构的NodeJS项目,但是我对如何在数据库(MySQL和Redis)的实现中管理工作流有很大的疑问 MySQL实现:针对六边形体系结构的MySQL(加上Redis)实现上的单个查询或连接,mysql,redis,sequelize.js,domain-driven-design,hexagonal-architecture,Mysql,Redis,Sequelize.js,Domain Driven Design,Hexagonal Architecture,我正在开发一个六边形架构的NodeJS项目,但是我对如何在数据库(MySQL和Redis)的实现中管理工作流有很大的疑问 MySQL实现: 我正在使用Sequelize ORM&可以填充模型以获得关联(连接)。Sequelize实现允许我在一个模型中设置一些选项,以便将其他模型直接包含在它自己的存储库中。我不需要第二个模型的依赖项 Redis实现: 但是,使用Redis,我需要分别查询所有资源。这是正常的。无法关联模型&我必须转到第二个模型的存储库。这些操作应该在我假设的用例中完成 例如
- 我正在使用Sequelize ORM&可以填充模型以获得关联(连接)。Sequelize实现允许我在一个模型中设置一些选项,以便将其他模型直接包含在它自己的存储库中。我不需要第二个模型的依赖项
- 但是,使用Redis,我需要分别查询所有资源。这是正常的。无法关联模型&我必须转到第二个模型的存储库。这些操作应该在我假设的用例中完成
- 我是否应该独立地执行所有MySQL查询(在各自的reportories上分离它们)并保留连接
- 是否可以与Redis实现保持连接
- 你处理过这个问题吗
谢谢 Redis应压缩为一个步骤。在其存储库中,应进行检索视频内容并将其返回到域服务所需的所有查询。 六边形体系结构假设您的数据库是一个细节,所以您的域服务并不关心数据库是否支持关系。在性能降低之前,您并不关心内部进行了多少查询,但情况并非如此
重要的一点是,存储库应该是每个AggregateRoot或每个实体。Redis应该压缩为一个步骤。在其存储库中,应进行检索视频内容并将其返回到域服务所需的所有查询。 六边形体系结构假设您的数据库是一个细节,所以您的域服务并不关心数据库是否支持关系。在性能降低之前,您并不关心内部进行了多少查询,但情况并非如此 重要的一点是,存储库应该是每个AggregateRoot或每个实体