Índice:
Vídeo: Introdução ao Amazon Web Services (O que é AWS?) - Cloud Coputing 2024
O Amazon Web Services (AWS) é realmente uma grande variedade de serviços que podem afetar os consumidores, pequenas e médias empresas (SMB) e empresas. Usando o AWS, você pode fazer tudo, desde o backup de seu disco rígido pessoal até a criação de um departamento de TI completo na nuvem.
A base instalada é imensa. Você pode encontrar estudos de caso de empresas como Adobe e Netflix que usam AWS. O uso da AWS não é apenas para empresas privadas, mesmo que o governo faça uso de seus serviços.
As tecnologias que tornam todos esses serviços possíveis são realmente simples na concepção. Pense em um par de latas com uma corda entre elas. A Amazon possui uma lata e você segura o outro. Ao falar em uma lata, você pode ouvir o que é dito na outra extremidade. A implementação, no entanto, depende de detalhes que tornam a comunicação mais difícil do que você pensa inicialmente. A discussão a seguir fornece uma visão geral sobre como funciona a nuvem AWS.
Arquiteturas de aplicativos com serviço
As arquiteturas de aplicativos orientadas por serviços, às vezes conhecidas como Arquiteturas orientadas a serviços (SOA), são de várias formas. Não importa como você as veja, arquiteturas de aplicativos com serviço são extensões das tecnologias cliente-servidor usadas nos primeiros dias da computação, na medida em que um cliente solicita que um servidor atinja executando uma ação ou enviando uma resposta. No entanto, os detalhes da implementação mudaram significativamente ao longo dos anos, tornando as aplicações modernas muito mais confiáveis, flexíveis e menos dependentes de uma configuração de rede específica.
O processo de solicitação e resposta pode envolver vários níveis de granularidade, com o termo microservice aplicado aos pares de solicitação e resposta mais pequenos. Os desenvolvedores freqüentemente se referem a um aplicativo que depende de uma arquitetura de aplicativos orientada por serviços como um aplicativo composto porque existe como várias peças coladas para formar um todo. As arquiteturas de aplicativos orientadas por serviços seguem muitos padrões específicos, mas em geral, eles usam a seguinte seqüência para executar tarefas de comunicação.
- Crie uma solicitação no cliente usando qualquer tecnologia de mensagem que o servidor necessite.
- envie o pedido, adicionando segurança ou outra informação conforme necessário.
- Envie a solicitação usando um protocolo, como Simple Object Access Protocol (SOAP) ou uma arquitetura, como REPRESATION State Transfer (REST). (Descubra como o SOAP funciona e como o REST funciona - um conhecimento passageiro de ambos é útil para trabalhar com a AWS.)
- Processe a solicitação no servidor.
- Execute uma ação ou retornar dados conforme exigido pela solicitação.
- Ao trabalhar com dados, processe a resposta no cliente e apresente os resultados ao usuário (ou outro destinatário).
A AWS fornece uma arquitetura de aplicativo orientada por serviços na qual você escolhe um serviço específico, como S3, para executar tarefas específicas, como fazer backup de arquivos em um disco rígido. Em muitos casos, você deve executar etapas de configuração além de simplesmente interagir com o serviço. Por exemplo, se você olhar para este tutorial de dez minutos, você achou que você deve primeiro criar um balde para armazenar os arquivos que deseja enviar para o Amazon. Esse passo adicional faz sentido porque você precisa estabelecer um local para recuperar os arquivos mais tarde, e você não deseja que seus arquivos sejam misturados com arquivos de outras pessoas.
Embora muitos dos processos que você executa com o AWS exigem a utilização de um aplicativo (para que você tenha uma interface de usuário em vez de código para trabalhar), o processo subjacente é o mesmo. O código fornecido no aplicativo faz solicitações para você e depois espera uma resposta. Em alguns casos, o aplicativo deve determinar o sucesso ou a falha de uma ação no servidor. Você precisa perceber, no entanto, que essas ações ocorrem no código e que o código usa uma seqüência de etapas para realizar a tarefa que você pediu para executar.
Fluxos de trabalho orientados por processos e funções
Ao criar aplicativos para ajudar a gerenciar serviços subjacentes, o AWS também define fluxos de trabalho. Um fluxo de trabalho é um método organizado de realização de tarefas. Por exemplo, quando você deseja salvar um arquivo no AWS usando S3, primeiro você deve criar um balde para manter o arquivo. Somente depois de criar um balde, você pode salvar um arquivo no AWS. Além disso, você não pode recuperar um arquivo do balde até que você primeiro salve um arquivo lá, o que faz sentido porque você não pode pegar um arquivo fora do ar. Em suma, um fluxo de trabalho define um procedimento para trabalhar com software, e o conceito existe há muito tempo. (Os primeiros fluxos de trabalho apareceram em meados da década de 1970 com protótipos simples de automação de escritório no Xerox Parc e Wharton School of Business da Universidade da Pensilvânia).
Os fluxos de trabalho podem consistir em fluxos de trabalho adicionais. Além disso, fluxos de trabalho gerenciam a interação entre usuários e serviços subjacentes. Um processo é a agregação de serviços gerenciados por fluxos de trabalho em um todo coeso. Os fluxos de trabalho podem realizar tarefas genéricas, mas os processos tendem a ser específicos e ajudar os usuários a atingir metas específicas. Um fluxo de trabalho orientado por processo é pró-ativo e tenta contornar problemas potenciais por
- Detectando padrões de falha e agindo neles
- Procurando tendências que tendem a levar a falhas
- Localizando e extinguindo ameaças potenciais
Ao olhar através esses tutoriais, você acha que todos eles envolvem o uso de algum tipo de interface de usuário. A interface do usuário fornece o fluxo de trabalho usado para gerenciar os serviços subjacentes. Cada etapa principal do tutorial é um fluxo de trabalho que executa uma tarefa específica, como a criação de um balde.Quando você combina estes fluxos de trabalho individuais em um todo agregado, o processo pode ajudar um usuário a executar tarefas, como mover arquivos entre a nuvem e o sistema do usuário. Criar um sistema de arquivos em nuvem é um exemplo de um fluxo de trabalho orientado por processo: o fluxo de trabalho existe para tornar o processo viável. Os fluxos de trabalho podem se tornar bastante complexos em operações em larga escala, mas vê-los ajuda a entender melhor a AWS. Encontre uma discussão mais detalhada sobre fluxos de trabalho e processos.
A função é o uso reativo de serviços gerenciados por fluxos de trabalho para resolver problemas específicos em tempo real. Mesmo que seja bom se os fluxos de trabalho conduzidos por processos funcionassem o tempo todo, a realidade é que, mesmo com uma confiabilidade de 99.999 por cento, o processo falhará em algum momento e um fluxo de trabalho baseado em função deve estar no lugar para resolver essa falha. Embora os fluxos de trabalho orientados por processos se concentrem na conclusão flexível das tarefas, os fluxos de trabalho direcionados por função se concentram em atenuar o efeito de uma falha processualmente. Em suma, os fluxos de trabalho com função-driven atendem às necessidades. Os serviços e os fluxos de trabalho da AWS também lidam com esse problema através da interface do usuário, como por meio da restauração manual de um backup para mitigar uma falha do sistema.