de Inteligência Artificial, Machine Learning e Big Data Design e desenvolvimento de sistemas, portais e aplicativos Treinamentos, arquitetura e sustentação de infraestrutura Sobre nós
• Arquitetura de uma aplicação web • Modelos de contratação de infraestrutura • Provedores de Cloud Computing • Apresentação de alguns serviços da Amazon Web Services DIA 2 - ATIVIDADE PRÁTICA Publicação de uma aplicação web utilizando a Amazon Web Services.
responsável pela infraestrutura de um novo aplicativo chamado Clickgram. O Clickgram permite que qualquer pessoa compartilhe uma foto com seus amigos em apenas um clique! Chegou o momento de você colocar o aplicativo no ar e seu chefe exigiu que não ocorram problemas de escalabilidade ou de disponibilidade.
Uma foto pode ser armazenada no formato JPG, GIF ou PNG • A aplicação web foi desenvolvida em Ruby on Rails • O banco de dados é o MySQL • O sistema de cache em memória usado é o Redis A primeira versão do Clickgram possui as seguintes características:
servidor mais potente parece funcionar… Porém, esta abordagem possui um limite físico de componentes do servidor. Em algum momento, não haverá componentes melhores do que os atuais. Além disso, o Rails pode necessitar de mais CPU, enquanto o MySQL pode necessitar de mais memória. O upgrade do servidor pode não atender a necessidades específicas de cada software.
aplicação, também garantimos redundância dos componentes Rails e MySQL. Quando "perdemos" um servidor destes componentes, as requisições continuam sendo atendidas.
abrange muitos aspectos no contexto de uma aplicação. Nossa sugestão, do ponto de vista de arquitetura física e infraestrutura, é que todos os componentes tenham redundância de servidores, com localizações em múltiplos data centers, preferencialmente com distância superior a 300km.
hospedagem mais antigos e ainda muito popular • É fácil colocar um site no ar, em geral os provedores oferecem construtores de site • O servidor é compartilhado com aplicações de outros clientes (é comum um servidor hospedar mais de 1 mil aplicações) • Você tem baixo controle sobre o ambiente que executa sua aplicação • "Não é possível" escalar ou oferecer redundância • O preço é baixo, cerca de USD$ 10,00/mês CARACTERÍSTICAS DE SHARED HOSTING:
Virtual Private Server • Desde o início da década de 2010, a maioria das empresas de shared hosting e de servidor dedicado estão oferecendo VPS • Um VPS é uma máquina virtual rodando em um servidor dedicado, consumindo recursos fracionados deste servidor • Você tem alto controle sobre o ambiente que executa sua aplicação • Não é fácil, mas é possível escalar e oferecer redundância • O preço inicial é baixo, cerca de USD$ 20,00/mês CARACTERÍSTICAS DE VPS:
dedicado a você • É um dos modelos de contratação de servidores mais antigos, muito usado por empresas que buscam alto desempenho e nível de controle • Você tem alto controle sobre o ambiente que executa sua aplicação • Não existe virtualização de recursos, ou seja, todos os recursos do servidor físico estão disponíveis para você • Não é fácil, mas é possível escalar e oferecer redundância • O preço inicial é alto, cerca de USD$ 100,00/mês CARACTERÍSTICAS DE SERVIDOR DEDICADO:
Platform As A Service (Heroku, Google App Engine, Engine Yard, etc.) • Consiste em servidores e serviços virtualizados, e pode ser considerado uma evolução de VPS • É uma das inovações em computação que revolucionaram a Internet, pois permite que qualquer desenvolvedor (pequeno ou grande) tenha acesso a um poder computacional capaz de executar qualquer trabalho a um preço baixo • É fácil escalar e oferecer redundância • O preço inicial é baixo, cerca de USD$ 10,00/mês • Em geral, apresenta o melhor custo vs. benefício e você "paga pelo que usa" CARACTERÍSTICAS DE CLOUD SERVER:
uma conta na AWS. Não deixe para fazer isso amanhã. Chegue com a conta criada e funcional. 2. É uma boa ideia dar uma lida no tutorial, para ter ideia do que será feito durante o curso. O sucesso desta atividade vai depender mais de você do que dos instrutores. 3. Computadores próprios são bem-vindos, mas não necessários. 4. Linux é bem-vindo, mas não necessário.