Introdução
O Django é uma estrutura gratuita e de código aberto para o desenvolvimento de aplicativos da Web em Python. Ele fornece ferramentas poderosas para desenvolver sites e aplicativos da Web completos. Ele permite que os desenvolvedores criem aplicativos de forma rápida e eficiente sem perder a qualidade.
O Django é famoso por sua versatilidade e potência no desenvolvimento da Web. É uma estrutura avançada para a criação de aplicativos em Python, que ajuda a reduzir o tempo de desenvolvimento com sua biblioteca de ferramentas e módulos. Também é conhecido por seus recursos avançados de criação de modelos e construção automática de URLs. Essa estrutura também oferece boa segurança para os aplicativos, pois verifica automaticamente os dados de entrada e evita ataques.
Comparação com outras estruturas
- Flask (Python) Desvantagens: você precisa escrever a maior parte do código por conta própria e não há ferramentas suficientes para grandes projetos;
- Ruby on Rails Desvantagens: Inicialização lenta, alta sobrecarga de memória e alto limite de entrada;
- Desvantagens do Pyramid: Difícil de configurar e não há ferramentas suficientes para grandes projetos;
- Desvantagens do Laravel (PHP): difícil de configurar e nenhuma ferramenta fácil de usar para criar um "banco de dados".
O Postgres é conhecido por sua alta confiabilidade e desempenho. Ele também tem recursos avançados para análise de dados, incluindo funções analíticas e ferramentas para lidar com a geoespacialização. Há também uma grande variedade de plug-ins que podem complementar sua funcionalidade.
O Gunicorn é conhecido por sua facilidade de uso e alto desempenho. Ele é um gerenciador de processos Python simples que pode lidar com várias solicitações em um único servidor. O Gunicorn tem muitos recursos incorporados, como suporte ao protocolo HTTP/1.1, reinicialização automática e dimensionamento de vorkers. Ele também pode ser usado em combinação com outras estruturas da Web, como Django e Flask.
O Nginx é um dos servidores da Web mais populares e confiáveis. É fácil de instalar e configurar, tem alto desempenho e baixo uso de recursos, oferece suporte a aplicativos da Web e sites dinâmicos e tem muitos recursos diferentes, incluindo envio de conteúdo estático, proxy, redirecionamento de URL e roteamento. Ele pode ser usado principalmente para lidar com o tráfego da Web, bem como para tolerância a falhas e alto desempenho.
Começando
Atualize os pacotes de software.
Instale o software a seguir.
Configurar o banco de dados
Faça login no Postgres.
Comando para criar um banco de dados para o projeto.
Crie um banco de dados, um usuário e otimize nosso banco de dados para que ele funcione mais rápido.
.
O banco de dados foi criado e precisamos fazer alterações em determinados parâmetros.
O usuário foi criado com sucesso e decidi otimizar o "DB" alterando os parâmetros para acelerar o nosso "DB".
ALTER ROLE "Yourproject" SET default_transaction_isolation TO 'read committed';
ALTER ROLE "Yourproject" SET client_encoding TO 'utf8';
Esses parâmetros são criados para fornecer ao usuário uma conta para se conectar ao banco de dados com uma senha.
Em seguida, a função do usuário será configurada com um fuso horário padrão de UTC, um isolamento de transação padrão de "Read Completely" e uma codificação de cliente padrão de UTF-8.
Concedido acesso ao usuário para administrar o "DB".
Criando um espaço de trabalho para o projeto
Criei um "DB" e agora podemos passar para os requisitos restantes do projeto. Para tornar as coisas um pouco mais fáceis, configurei todos os requisitos de que precisamos em um ambiente virtual.
Vamos escrever esses comandos.
sudo -H pip3 install virtualenv
Depois de instalar a ferramenta "virtualenv", começo a modelar nosso projeto.
Criei um diretório no qual armazenaremos nossos arquivos para o projeto e navegarei até ele
cd ~/myprojectdir
No diretório, crie um ambiente virtual.
virtualenv é um comando que permite criar ambientes isolados para diferentes projetos e usar diferentes versões de bibliotecas e aplicativos.
Isso permite que a mesma pilha de tecnologia seja mantida para todos os projetos da organização, reduzindo o risco de incompatibilidades e bugs.
Esse diretório conterá imediatamente a versão local do Python e o sistema de gerenciamento de pacotes.
Antes de atribuirmos requisitos ao nosso projeto, precisamos executar o ambiente virtual. Digite este comando.
A linha de comando será alterada, mostrando que agora você está executando o ambiente virtual do Python. Ela será semelhante a esta.
Ao executar o ambiente virtual, instale os componentes necessários.
Criação do projeto
Um diretório de projeto já foi criado para a estrutura, portanto, precisamos especificar o caminho para a inicialização, porque o segundo diretório contém o subdiretório com o código do script de controle dentro dele.
Depois disso, você precisará alterar alguns parâmetros no arquivo de projeto gerado. Abra o arquivo de configurações com qualquer editor de texto.
Agora precisamos alterar as configurações.
Em seguida, role a tela para baixo e encontre a seção que fornece a senha, cujo nome é "DB".
Procure também a string DATABASES, configure essa string para seus dados.
Role para baixo e adicione o parâmetro para especificar onde você deseja armazenar os arquivos estáticos.
Configuração final
Usando os scripts de gerenciamento, moverei o esquema "DB".
~/yourprojectdir/manage.py migrate
Crie um usuário administrativo para o projeto.
Coletou todo o conteúdo estático no diretório fornecido.
O comando precisa ser validado. Depois disso, todos os arquivos serão movidos para o diretório "static" do projeto.
Abra também a porta que será usada para o projeto.
Check
Verifique nosso projeto iniciando o servidor da estrutura.
Vá para o navegador da Web para verificar se a estrutura funciona.
Após a autorização no recurso da Web, você será direcionado ao painel de controle.
Saída
Nesta postagem, mostrei como preparar o sistema Ubuntu 20.04 para iniciar um projeto Django com um banco de dados Postgres, um servidor Web Gunicorn e um proxy Ngnix configurado.