Is Python manage.py runserver used in Production??

Bhavani shanker
2 min readJul 29, 2021

Django has an inbuilt server. All of us are aware that we can simply start the server using the following command.

python manage.py runserver

Then what about in the production, is it the same command used for running our Django project in production.

Well Absolutely No.

Why is Python manage.py runserver not used in production?

The Django inbuilt server is created for development purposes, where the developer can see all the API’s or Views are working correctly and what are the responses of that API’s.

It is also designed in such a manner keeping fewer amount of users in consideration. It can handle only small group of users requests but not a large group of users [>200].

It also doesn't have the ability to restart itself when an unexpected error is encountered and the server stops. Also, it doesn't give any security layer from malicious user requests or users.

This is where the webservers come into the picture as all the above-mentioned problems are handled.

Webservers:

Some of the web servers are :

  • IIS Web Server.
  • Apache Web Servers
  • Nginx Web Server.
  • LiteSpeed Web Server.
  • Apache Tomcat.

These webservers have their unique way of handling the projects in providing security also assistance.

These webservers can handle a large number of requests, acts as a security layer, assists when the server goes down and restarts again. That’s why the production doesn't simply use python manage.py runserver but the webservers.

These webservers are not only for Django but for all big projects having huge traffic, developed in any frameworks/languages.

In my next blog will explain in detail the deployment of the Django project using the Nginx server in AWS.

--

--