整理Django的系统架构时
首先
本页面整理了使用Django时的系统架构。
系统架构包括服务器、中间件配置以及在何处放置什么内容以及为什么要放置的内容。
这些是在参加Udemy的【3天完成】Django入门(使用Python 3创建Web应用程序并在AWS EC2上发布!)课程时未介绍到的系统配置背景。
使用Django构建的Web应用的结构
1. 组成及其原因
構築する際、中~大規模なシステムのために、WebサーバはNGinx、APサーバはGunicornを使用し、FlaskではなくDjangoを開発フレームワークとして採用する。また、オペレーティングシステムはLinuxを利用する。
-
- 何故Gunicornを使用するのか?
-
- PythonのWebアプリケーションはWSGIという仕様に則って開発されており、WSGIに則って作られたWebアプリケーションは、WSGIの仕様に則ったサーバ上で動作が出来る。WSGIに該当するのがGunicornであり、他にもuWSGIがある。
-
- 上記をふまえ、Gunicornを使用する理由は、処理が安定して早いからと言われているため。
何故Gunicornだけでなく、NGinxを使用するのか?
Gunicorn公式より、以下記載があり、公式推奨のため。
We strongly recommend using Gunicorn behind a proxy server.
FlaskとDjangoの違いは?
Flsakはシンプルなフレームワーク、Djangoはリッチなフレームワーク。
API系はFlaskでやっている人を見かけることあり。
2. 将来的学习计划 de
-
- 以下の本を読み実践して、基礎固め
動かして学ぶ!Python Django開発入門数多ある本の中でこの本を選んだ背景は、一般的なWebアプリケーションの説明とDjangoの特徴(View等の使用方法)の説明がしっかり記載されていたため
ポートフォリオを作成する(一旦以下2種のポートフォリオがあればよいと考える。)
Djangoを使用した自分の紹介サイト
Flaskより需要があるため(少なくとも日本国内では、現時点でpythonのフレームワークに限ればDjangoのほうが需要が高い。)
Djangoを使用したAPI
Djangoおよび全体アーキテクチャの理解が可能なため