Django project-apps:实现真实数据库方案的方法是什么?

问题描述 投票:0回答:1

我已经阅读了有关Django的项目和应用程序的文章和帖子,并且基本上以Pool和Users的典型示例结尾,但是实际的程序通常使用复杂的关系数据库,因此其设计趋向于此RDB;并且[[eternalflict再次引发了以下问题:哪个考虑一个应用程序,哪个考虑该应用程序的组件?

以这个RDB

(由Visual Paradigm提供​​)为例

enter image description here我可以将整个集合视为一个应用程序,或者将每个实体都视为一个应用程序,前景看起来是灰色的。我唯一确定的就是这个:

$ django-admin startproject movie_rental

因此,我想从大家的专业知识中学习:*您将使用哪种方法(

不一定是前面提到的那些

)来基于此RDB创建Django项目的应用程序?*提前感谢。
django python-3.x rdbms
1个回答
1
投票
例如,如果您的支持资源很少,并且不需要能够在应用程序的不同区域中快速冲刺开发新功能(例如,电影管理功能vs工作人员,那么单个整体应用程序就是一个很好的解决方案。管理功能)

大型整体应用程序的一个主要缺点是,最终它们的功能集会变得太大,并且对于每个新功能,您都需要进行大量的回归测试,以确保在其他领域不会产生负面影响的应用程序。

您的另一选择是采用微服务策略。在这种情况下,您可以将这些实体划分为一系列较小的服务,并为它们提供每种方法以相互集成/通信(API)。

示例:-电影服务- 客户服务-员工服务

这种方法的优势在于,它使您可以按特定服务区域划分功能和特性,从而在部署新功能或出现灾难性问题(即数据库崩溃)时降低整个应用程序的风险和回归测试。

这种方法的缺点是,在真正的微服务架构下,所有资源都是分开的,因此您需要为每个服务拥有唯一的资源(即数据库,服务器),从而增加了运营成本。

这些选项都是不错的选择,但是完全取决于您的支持模型和预期的数量。希望这会有所帮助。

© www.soinside.com 2019 - 2024. All rights reserved.