e contextualizando qual Factor up é uma metodologia com 12 boas práticas para criar uma aplicação sais moderna e escalável essa em Manifesto foi lançado em 2011 por um grupo de desenvolvedores da reloco uma grande plataforma de serviços em nuvem ou seja esses desenvolvedores poderão acompanhar de perto aplicações que funcionavam muito bem na web e outros nem tanto assim por isso mesmo eles decidiram colocar esse Manifesto no papel com o intuito de ajudar nós os desenvolvedores nesse momento você já deve estar pensando caramba mais de 12 coisas para aprender ficar tranquilo esse é um documento de
alto nível que não especifica exatamente como você precisa pode ficar em contrário de outros padrões como um sólido e Object calisthenics o intuito dele é te ajudar a criar aplicações melhores desviando dos erros mais comuns vamos deixar o endereço do site oficial na descrição Mas é claro que vamos falar sobre cada um dos doze e aqui nesse vídeo por isso fica com a gente seja bem-vindo ou bem-vindo ao dicionário do programador onde a cada semana colocamos no ar um vídeo de Jean dando mais um termo ou tecnologia desse Incrível Mundo da programação é eu sou
Vanessa ver beleza Gabriel pros Nós Somos Amantes da tecnologia e os responsáveis por trazer todo esse conteúdo de uma forma mais leve para você está gostando já deixa o seu like e se inscreve no canal que a gente está presente nesse vídeo é a hostgator nossa super parceira fique também pode ajudar você a conquistar a performance desejada para sua aplicação aqui na descrição temos um link especial com desconto em qualquer plano da hostgator vamos deixar como dica o vs Premium que tem oito cordas CPU 10 GB de memória ddr4 e 260gb bate de armazenamento SSD
é poderoso e tem um ótimo custo-benefício confere lá e frequência a fatores você precisa conhecer um conceito de satisfaz é software-as-a-service ou seja software como serviço que são sistemas web que usamos sem precisar comprar uma licença nem instalá-lo localmente você quer conhecer um site de uma forma mais profunda temos um salário específico sobre esse assunto vamos deixar aqui para você um primeiro fator é o Code base ou base de código que se refere a garantir que a base de código esteja em um repositório de um sistema de versionamento como um kit e esse um deve
ser respeitado se houver mais de uma base código estamos lidando com um sistema distribuído constituído de várias aplicações e cada uma delas pode seguir os doze fatores Além disso diz que se mais de uma aplicação compartilha de uma mesma base de código ela está violando Manifesto sendo necessário dividir o código em bibliotecas que podem ser incorporadas em outros sistemas assim a aplicação pode estar em versões diferente sim depois de ambientes diferente sejam elas de desenvolvimento teste o o segundo fator depender se resolve dependências consiste em explicar mente declarar e isolar as dependências evitando assim que
nossa aplicação de fenda de pacote global e o seu muito útil para garantirmos que não é verão diferenças entre ambientes distintos por falta de pacotes instalados para garantir isso podemos utilizar o mpm para o molde composer PHP banda para o Rubi eo PIP Python por exemplo terceiro fator conferir ou configurações saindo um pouco do código em ser chamamos de configuração qualquer coisa que varia entre The Voice diferente como por exemplo credenciais de acesso a serviços como o banco de dados ou ideais e outros parâmetros que alteram a execução do nosso programa para garantir que essas
informações possam ser alterados em cada local devemos armazená-los em variáveis de ambiente podemos fazer isso de duas formas usar as configurações do sistema se eyes and the continuous integration e conte-nos delivery ou criar o filme conto em e utilizar os pacotes o que existe em diversas linguagens o quarto fator Back in service ou serviços de apoio já que falamos de configurações muitas vezes as utilizamos para parametrizar os serviços de apoio que são esses temos que precisamos consumir através da rede como armazenamento de dados como mais que l ou o mongo DB ou sistemas de filas
como redes é newcast convém que é CID entre outros Esse quarto fator discutir a aplicação deve funcionar com o sistema e similares sem a necessidade de modificar o código mas sim apenas alterando a configuração de acesso como por exemplo as Strings de conexões e credenciais quem Outro fator build release Brown ou seja construa lance Execute depois de configurar a aplicação e seus serviços devemos separar essas etapas do processo de vidro é o impacto orçamento da aplicação dependências e binários por exemplo a geração de arquivos JavaScript a partir de Tais with How the CSS a partir
do site já um Elise é unir o resumo a bild com a configuração criada no terceiro fator e por último o que é quando o sistema está sendo executado no ambiente desejado essa separação de etapas se tornou muito mais fácil com uma programação de sistemas desse aecid E também com o uso de container Zinho ambiente de produção pronto temos Nossa aplicação rodando no ambiente desejado mas para garantir a escala habilidade horizontal isso é aumentar e diminuir o número de servidores rodando aplicação de acordo com a demanda temos que lembrar que a aplicação deve ser encarada
como um processo e nada mais chegamos então ao sexto faltou grossas ou processos na prática isso significa dizer que toda ter assistência de idade deve ser realizada em um serviço de apoio fazendo assim com que os servidores que rodam Nossa aplicação possam ser facilmente descartáveis nos processos de Skyrim ou escalonamento continuando a pensar na aplicação como um processo temos o sétimo fator o pote dizer ouvir e o conceito de posse bairro gente faz com que ela precisa receber requisições em uma porta específica do sistema operacional mais que o primeiro pensamento que vem na nossa mente
seja aplicações web exportando para a porta 80 ghttp ou 443 ghttps basicamente todo o sistema pode ser construído dessa maneira basta pensar em cada serviço de apoio que vimos no quarto fator já que nossa aplicação se colecta eles em uma determinada a porta isso também significa que a nossa própria aplicação pode se tornar um serviço de apoio para outra facilitando assim a criação de arquiteturas orientadas a serviços então o fator concurso ou concorrência acho que eu falei certo não sei uma parte importante é o criar processo tem a ver com a concorrência isso é como
aplicação precisa criar mais de um processo para rodar precisamos então garantir que cada um seja autossuficiente ao criar ou destruir em instâncias de si mesmo assim podemos permitir que partes do nosso sistema escala em de maneira e por exemplo se tivermos um serviço de envio de e-mail em massa os usuários ele provavelmente terá regras de Alto esquerdo indiferente da funcionalidade de redimensionamento de imagem de perfil verdade com quem acabamos de falar sobre a necessidade da aplicação escalar certo isso só pode ser feito facilmente através da descartabilidade dos processos entre um no fator de esposa Bellucci
ou descartabilidade aqui agora parecer atende Ele disse que os processos devem ter início rápido e desligamento amigável ou um gracioso se formos traduzir ao pé da letra Ou seja já que os servidores serão horizontalmente escalares aplicação precisa poder subir novos processos de forma veloz para poder atender aumento repentino das requisições pelo mesmo motivo ela deve ser desligadas em gerar problemas pois esse fluxo de liga-desliga será repetido diversas vezes durante o seu ciclo de vida terminamos de falar sobre a complexidade de criar com uma aplicação baseada em pro E isso se torna muito mais difícil quando
temos diferenças entre os ambientes por isso o décimo fator é o deve pode parte ou paridade entre desenvolvimento e produção é claro que isso está bem mais simples agora com as grandes difusão de container em nosso dia a dia Em um passado não muito distante lutávamos contra em compatibilidade de ambientes a utilizar máquinas virtuais ou até mesmo desenvolvendo direto no sistema operacional do computador mas agora o problema de ué na minha máquina funciona foi praticamente extinto foi para isso que o DOC foi criado né e podemos ter mais tranquilidade em assumir que estamos rodando em
cenários muito mais próximo e você não faz ideia do que nós estamos falando assistir o vídeo sobre contenders que tem aqui também não dicionário agora que temos certeza que os ambientes Estão próximos estamos livres de problemas em nossa aplicação Ufa ela nunca mais vai passar por nenhum erro Esse é um engano muito comum em desenvolvedores a displicência com os logs sorriso o décimo primeiro fator cuida justamente disso os logs e traz a ideia de tratar Os Estranhos de eventos alheios à nossa aplicação fora da sua responsabilidade afinal quando estamos em desenvolvimento queremos vê-los em tempo
real Mas temos que ter outra preocupação quando estamos rodando um produção eles têm mais a ver com o ambiente do que com o nosso código Isso facilita muito quando inserimos ferramentas de captura em tratamento de lotes como por exemplo blog teste graylog ou Slug chegamos geralmente ao último dos Doze fatores que eu admiro processos ou processo administrativo aplicações mais robustos geralmente possuem diversas rotinas que devem ser executados para manter ou atualizar o sistema como por exemplo rodar mais graysons limpeza de histórico consolidação de dados entre ou essa gelatina devem ser incorporadas na base de código
do sistema para evitar erros de versionamento e também facilitar a execução nos ambientes finais Oi e aí gostou está preparado para criar aplicações cada vez melhores mais escaláveis e de manutenção mais simples seguindo esses doze fatores Com certeza essa tarefa se tornará possível Esperamos que você tenha gostado e vamos nos despedindo mas antes de ir embora deixa aqui nos comentários O que você achou e uma sugestão de tema para o próximo episódio exatamente aí nós vamos Deus até a próxima tchau tchau Existem muitos temas importantes para quem quer se desenvolver e se tornar um deve
ainda melhor já falamos aqui sobre muitos deles né como Clean code os óleos tem também piou de de Arquitetura do software infecção muitos episódios por isso vamos deixar aqui a Playlist completa do dicionário para você escolher o que você desejar está tudo em ordem alfabética para facilitar sua busca viu vai lá