[Música] olá meu nome é jefferson o chelsea que hoje não falar sobre o conceito de arquitetura em aplicações para internet do curso de fundamentos de arquitetura de sistemas digitais 91 eu sou o software em dinheiro na alta roda deixa aqui então no site pra entrar em contato comigo caso você tenha algum interesse queira fazer milagre um feedback e até fazer algumas perguntas sobre essa aula e que a vontade e se os meios de contato ou através de cinema nas redes sociais principalmente o twitter dando início ao curso nós vamos falar sobre alguns pontos específicos que
o objetivo da sala então começa a falar do tipo de arquitetura esses tipos de texturas são basicamente arquiteturas que é vista no mercado tem muitos projetos que acabam lidando com as arquiteturas o passaram o passo hoje no sistema e usam esse mecanismo não necessariamente que seja um template que seguindo sempre o mercado mas menos um padrão encontrado não falar um pouco sobre esses padrões o segundo objetivo é um comparativo esse tipo de arquitetura tentar comparar eles ver a evolução das arquiteturas ao longo do tempo até o que nós chegamos atualmente o que nós temos hoje
que é mais visto hoje em dia vamos também fazer um comparativo entre diferentes tipos de arquiteturas mostrando as vantagens e desvantagens de cada uma delas e como é que foi mudando isso ao longo do tempo e gerenciamento de erro segundo de acesso a dados que nós queremos falar sobre a arquitetura de sistemas e queremos construir algo robusto sistema está sempre pensando em pontos de falhas e de grande volume de acessos então um ponto interessante e vai conversar para tentar estabelecer uma estrutura e uma arquitetura bem robusta para lidar com esses pontos são êxitos básicos para
poder entender e ficar claro tudo que estiver conversando aqui mensal seria ter conhecimento básico sobre protocolo http proxy então se um conhecimento básico até ter como funciona o que é o próprio reforço proxy melhoria dá uma olhada nesses itens antes de continuar essa tal entendimento também sobre rap e interessante entender como funciona a cpi o que é que isso vai ser citado landau conhecimento do doc ou qualquer outro sistema de conteúdo ou virtualização serão citados nomes como contêiners então tem um conhecimento básico xodó colocando sistema de container de benítez o doc seria interessante pra poder
entender tudo o que vai ser dito aqui não ter nenhum conhecimento avançado só o básico não pode se perder durante conversa sobre esses pontos interessante também queria saber programar pelo menos o básico de programação para quando a gente fica conversando sobre protocolos de comunicações e alguns conceitos relacionados a programação não fiquei um gato na comunicação bom tipo de arquitetura eu costumo ver um monolito é inútil de arquitetura que o mecanismo mais simples que a gente tem para começar a aplicação geralmente as aplicações começam como lytton ou seja uma única aplicação que é desenvolvida que têm
acesso a cuidados e serviços externos enfim vários outros pontos de comunicação externa como publicações clientes conecta nessa aplicação e conforme a aplicação vai crescendo é um único do país é o único serviço que está ali ganhando mais e mais funcionalidades mas é uma aplicação única então nesse cenário por exemplo de monolito nós vamos ter aplicações clientes sendo aplicações web ou aplicações móveis conversando com este serviço através de protocolo http nesse meu exemplo nessa linha t tudo aqui eu tenho uma aplicação ela vai ter três instâncias e essas instâncias montar então sendo organizados através de um
sistema de orquestração de aplicação enfim algo que não convencer nesse ponto mas elas vão passar sempre por um próton http proxy http então vai redirecionar para a qual a distância é trabalhar e essas instâncias obviamente está conectado então em um banco de dados mesmo banco de dados ou podem ser mais de um banco de dados com base na na escalabilidade desse banco caso queira ter duas nos bancos de dados após tomar ter uma réplica enfim que deixar mais simples para essa visualização coloquei uma instância de banco de dados e sistemas de monitorar a idéia dele
seria ter uma aplicação ou seja se eu não tenho muita demanda eu posso pegar instância com os pagamentos a 2003 e deixar somente a aplicação está a ser rodado não ia mudar nada eu teria as mesmas funcionalidades eu teria a mesma coisa o dano teria as mesmas funções a única diferença é que com o aumento da demanda essa aplicação em uma única instância ela pode não se tornar o suficiente para aguentar várias requisições dos seus clientes ou em vários comandos vários serviços que deveriam ser executados serão operados por falta de recursos da máquina ou por
qualquer outra situação por uma única aplicação está rodando então é interessante ter várias instâncias para que consiga ser distribuído a demanda entre essas três substâncias ou no caso mais distância dependendo da demanda ou até mesmo por causa do tipo que surge algum motivo essa aplicação de instância como falha ainda temos a instância 2 e 3 então os próximos aplicações próximo seqüestros que entrarem em si próprio se ele vai parar de redirecionar para lançar um edital para 2 e 3 essa arquitetura é a mais simples porém ela tem alguns pontos à tarde mas só pra mostrar
mesmo tem uma administração que o outro na arquitetura comum se em conta que se fala muito em micro serviço micro serviços existem diversas maneiras de fazer existem muitas os meios muitas estratégias para trabalhar comigo serviços então não vou dar nomes para assumir o serviço chamado serviço 123 que são três template de apresentar aqui e esse é um que eu vejo que é o mais caótico ele tem vontade de ser mãe que os serviços ou seja vou ter serviços menores eu tenho vontade de que eu posso ter serviços fazem coisas diferentes com têm responsabilidades diferentes o
que eu tenho uma certa vantagem de que eu não sou preso a uma única tecnologia então diferente do monólito que eu tinha uma única aplicação que eu só tinha mais instância da mesma aplicação para atender à demanda nos micro serviços eu vou ter um serviço para cada operação assim como no monitor um serviço número pode acabar recebendo uma grande demanda de acesso de serviços sob qualquer coisa do gênero uma única instância do serviço pode não ser o suficiente então pode ser escalado dentro do papo o novo 11 outro novo duas instâncias ou mais de serviço
nada mudou cada caixa pequena desta do novo seria mais ou menos como funciona um monolito então eu aumentei a complexidade que agora tenho vários serviços antigamente tinha um serviço num agora vou ter vários serviços e esses vários serviços eles têm com quem conversar entre eles e tem uma certa comunicação no mundo lito é simplesmente código como eu tenho um único mês eu vou ter comunicação de uma unidade com outra funcionalidade chamado de código do sistema nesse caso eu posso ter por exemplo um sistema de autenticação no serviço 11 e um sistema de pagamento do serviço
2 só que como eu vou fazer os devidos pagamentos sem estar relacionado ao usuário geralmente pensando em um banco de dados por exemplo gravar no banco de dados com registro de pagamento que estava em vincular o usuário então um serviço dos servidores eles têm que estabelecer algum tipo de comunicação o que acontece nesse caso é que o serviço um pode acabar chamando diretamente o serviço 2 pode ser por um protocolo próprio pode ser por http não tem muita relevância mas tem essa chamada direta então pensando um sistema de micro serviços dessa dessa plate nós podemos
ter clientes web ou mobile acessando e si própria esse próprio http ele vai verificar qual é o serviço responsável por aquela determinada operação aquela determinada a funcionalidade então vai redirecionar o serviço um outro serviço dois nesse meu exemplo o serviço 3 é um serviço interno que não possui aquela camada http de comunicação com as aplicações web mobile os clientes externo desse cluster mas isso é somente um exemplo porque não necessariamente todos os serviços bom ter que ter essa camada externa então isso aqui é só uma coisinha aqui pode ser relevante ou não é algo normal
porém assim como o serviço 102 o serviço 3g também tem essa comunicação direta entre eles então eu fiz aqui vocês um comunicado do serviço 22 comunicar com três mas não pode se tornar algo caótico conforme o número de serviços foi crescendo nesse ponto eu posso criar uma funcionalidade no serviço 3 que ela depende uma informação do serviço então vou ter uma comunicação saem do serviço 3g no serviço um posto de serviço ter site suíço dois conforme vai aumentando o número de serviços esse número de plantinhas e comunicação de tênis vai aumentando pode tornar uma arquitetura
caótica e acaba sendo bem difícil de manter então essa é uma arquitetura de mil serviços que sim pode funcionar já vi sistemas rodando muito bem com isso mas tem que ter um certo cuidado que conforme a textura vai crescendo a plataforma para crescendo e se tornando cada vez mais complexo de manteiga e monitorar bom segundo tempo plate time com os serviços é uma arquitetura na qual nós ainda teremos serviços ainda vamos ter essa camada http sendo respondida pelos 31 e 2 por exemplo só que a única diferença é que agora nós não temos mais aquele
canal de comunicação direta entre o serviço com 12 e 21 13 nesse caso a gente vai ter um mestre de bronca a vantagem disso é que nós não vamos ficar preso a um serviço está conectado diretamente no outro e tudo vai passar por um mestre de gol sendo que seu serviço um precisa comunicar com o serviço dois motivos este serviço 2 ele está fora do ar ele caiu então serviço que taparam de funcional para responder por algum motivo ele não vai com vai quebrar mais um serviço um porque qualquer operação que o serviço for fazer
é completamente independente de ser a culpada no serviço dois porém qualquer informação que o serviço com um precisa passar adiante ele vai botar uma mensagem de sms e boca e quando os seus dois estiveram online estiver apto ele vai lá no método boca os buscar suas mensagens então interpretar as mensagens fazem uma determinada operação e se necessário então será feito chamadas com banco de dados uma equipe externa ou até mesmo criar outras mensagens nesse negócio pro vantagem disso não vai ter mais aquela não se tem mais aquela comunicação direta entre o serviço tudo faz com
que eles fiquem desacoplados ou seja se torna muito mais fácil eu pegar esse serviço 2 e trocar ele por um outro serviço que eu quiser trocar esse por um serviço de alta tecnologia completamente o meio de funcionamento não vou ter impacto nenhum simplesmente tira aquele serviço desligo ele e os outros eles vão continuar consumindo normalmente outra questão que se tiver de dar um time qualquer um dos serviços os outros não serão afetados e com esse mestre de bronca quando o serviço voltará ficará anterior pode pegar todas as mensagens foram geradas no passado então eu ainda
consigo pegar um trabalho é retroativo desde o momento que ficou da aplicação até o momento atual conforme as mensagens novas porém chegando temos algumas vantagens desse mecanismo porém a plataforma inteira fica refém desse método de bronca crescimento de boca e apresentar algum problema arquitetura inteira sofre esse problema mas nós vamos fazer um comparativo depois vamos tentar ver com o mau pode ser se esse sim o ponto feito no nosso futebol e também temos uma arquitetura de micro serviços número 3 é esse é um ser uma arquitetura em estilo clean e se arquitetura um pouco diferenciada
daquela outra tensão no mar negro quer nesse quesito aqui nós temos clientes fazendo comunicação http que nem nós mostramos nos tipos anteriores só que ao invés de si próprio http redirecionará que lhe resta para um determinado serviço ele vai gerenciar as e vai passar directamente com um gerenciador de pipeline isso pode ser o camu da aplicação tem sorte para gerenciamento de debate online pode até mesmo o serviço wwf ea ideia disso é eu tenho uma aplicação que ela vai ter nas funcionalidades no qual cada funcionalidade já tem um certo passo para seguir tem um pai
com line no qual vários passos para poder chegar no naquele resultado final a vantagem sabe que os serviços que ainda há gente vai ter as aplicações separadas podemos ter cada serviço com sua a dependência diferente no que depende do banco de dados 1 o serviço 2 que depende de um serviço externo por exemplo o sistema de pagamento de um serviço no trecho que depende de um outro banco de dados que não tem nada a ver com banco de dados número então eu posso ter coisas separadas totalmente desocupadas e cada serviço tem uma responsabilidade bem específico
fazendo com que consiga me preparar pra ter menor o código possível para evitar bancos para fazer um código uma qualidade melhor performance isabela tecnologia que se encaixa para aquele determinado a passo que o treinador step nesse papo online com essa arquitetura oeste entra no próxim do espectro line esse jeito de especularem vai ver aquela determinada request em que pai planeta tem que seguir a começar o particular com o primeiro passo o primeiro passo pode ser a comunicação do clube som e vai executar a resposta do presidente do sport line caso aconteceu um erro ele vai
gerenciar a 85 e devolver para o cliente senão ele vai pegar essa resposta e vai passar por serviço número 2 vai por sua vez podem ter na operação caso de sucesso para o passo número 3 e assim por diante até ao pote line encerrando o top line ele vai pegar e fazer essa resposta do cliente caso de quarta que sejam 45 no irs desse modo diferente daquele sistema de metas de bloquear os serviços estão desacopladas entre eles porém se o serviço 2 tiver fora do ar naquele momento eu passo o gestor popular vai tentar passar
por servidores daquela quebrando a quebrar o serviço está fora do ar há então só gera nenhum erro a importância de ter um centro de pilar e caso isso de um erro e se lá ele tem está apto a saber que falhou no segundo o técnico contou para um serviço número 2 ele tem que saber voltar a ser o número um em reverter aquilo que foi feito para gerar nenhuma inconsistência no sistema então imagina um usuário fez autenticação o passo número 2 ele tentou o pagamento ano passo número 3 quando foi de fato até lá esse
usuário a um determinado serviço o plano foi adquirido acontece com ele eu tenho que estar apto a voltar e poder reverter o pagamento o usuário um cenário de exemplo então o jeito de pipeline tenho sua vantagem porém tem muito cuidado nesses pontos vão gerar uma certa inconsistência então tenho certo uma certa demanda de de saber fazer com que o próprio de tudo para que ele trabalhe com beck entre diferentes espaço de tempo de serviço no placar outro ponto também que é uma desvantagem nesse caso é que você tá presidente do ipec line uma vez que
a exigência do tipo é fora do aro a plataforma inteira do sistema inteiro vai estar fora do ar