ARTS打卡计划第四周-Review-构建大规模django应用的一些建议

Posted dongqisilent

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ARTS打卡计划第四周-Review-构建大规模django应用的一些建议相关的知识,希望对你有一定的参考价值。

本周文章来源于https://medium.com/@DoorDash/tips-for-building-high-quality-django-apps-at-scale-a5a25917b2b5,这篇文章还是非常难阅读的。但是其中提到了一些django的实践还是很有借鉴意义。

文章中主要有如下观点

1、非常小心的设计你的apps

  如果你不明白如何去设计多个app,你可以保持只有一个app。如果你一定要分成多个app,你必须明确减少他们的依赖。app之间的依赖越少,每个app越容易打成一个微服务。

2、明确的指定数据库表名

  数据库表经常比应用程序更重要,而且活的更久,因此数据库表是核心的情况下,我们需要指定数据库表名。这样就算我们替换开发框架时候,数据表仍然一致。强烈推荐使用through 指定多对多时候的关联表,这样能更直白的获取数据交互

3、避免使用GenericForeignKey

  使用GenericForeignKey会导致很多查询特性无法使用,而且也会增加系统复杂性

4、保证安全的migrations 

  不正确的使用migraitons可能会是服务器宕机

5、经常清理migrations文件

6、减少migrations之间的冲突

7、避免model中做太多的逻辑

8、谨慎的使用signals

9、避免直接使用orm的方法去处理数据,应该使用一些中间层次去处理,中间层再去调用orm

10、避免使用model cache

以上是关于ARTS打卡计划第四周-Review-构建大规模django应用的一些建议的主要内容,如果未能解决你的问题,请参考以下文章

ARTS打卡计划第四周

ARTS打卡计划第6周-REVIEW-超越编码的避免项目失败的软技能

ARTS打卡计划第二周-Review

ARTS第四周打卡

ARTS打卡计划第一周-Review

ARTS打卡计划第四周-ALGORITHM