Ambiente de testes e desenvolvimento na nuvem

Ambiente de testes e desenvolvimento

Ilustração – Ambiente de testes e desenvolvimento

Toda equipe de desenvolvimento precisa da segurança de um ambiente de desenvolvimento para programar novas aplicações ou atualizações nos serviços. Mesmo quem tem pouca experiência em programação já deve saber da instabilidade que uma aplicação passa durante seu período de desenvolvimento. E ainda que tudo já esteja correto, ao ver dos desenvolvedores, um ambiente de testes  deve simular o produto que irá para produção.

Ambiente de desenvolvimento

O momento de desenvolvimento de um projeto é aquele período liberado para erros. E acredite, por melhor que seja o desenvolvedor envolvido no projeto uma coisa é certa, erros ocorrerão enquanto ele está programando uma classe ou integrando alguma api e etc.

E são diversos os erros: erros lógicos, de sintaxe, exceptions, sem contar em dados que podem ser apagados por uma simples linha de comando mal executada. Agora imagina se todos esses problemas ocorressem em pleno ambiente de produção, com os clientes acessando a todo tempo, enquanto você está descabelando para resolver o problema em uma maratona sem fim.

Via Giphy - Erros em ambiente de testes

Então, caso você ainda não tenha percebido esta necessidade, peço que pare a leitura aqui e vá configurar um ambiente de desenvolvimento para você, hehe. Afinal, esta prevenção pode evitar que você faça algo desastroso no final.

É muito comum desenvolvedores autônomos e individuais trabalharem em ambientes locais de desenvolvimento. Esta é uma opção barata e já garante grande autonomia para que você possa errar até acertar em cheio. Mas, em uma equipe grande e/ou que trabalhe remoto, como garantir as configurações ideais para que cada desenvolvedor consiga trabalhar e compartilhar seus códigos com toda equipe?

Ambiente de desenvolvimento em nuvem

Respondendo ao parágrafo anterior, um ambiente de desenvolvimento em nuvem é uma opção que foi adotada por diversas equipes. Pelo seu caráter instável, o ambiente de desenvolvimento exige das equipes necessidades muito variáveis de recursos, dependendo do ciclo de desenvolvimento das mesmas. Assim, uma solução em cloud computing se adapta bem fornecendo recursos sob medida para a necessidade atual. E quando esta necessidade acabar é possível reajustar cada recurso de volta para a nova necessidade.

Além disto, com a infraestrutura em nuvem é bem mais fácil de padronizar as configurações do ambiente.  E com um ambiente padrão seus desenvolvedores não terão surpresas de incompatibilidades durante esta etapa. Imagine manter padronizada as configurações de desenvolvimento de cada servidor local em uma equipe de 50 colaboradores que trabalham remoto.

Aqui na DialHost, por exemplo, temos um ambiente de desenvolvimento enxuto para que a equipe inicie qualquer projeto ou feature. E sempre que necessário reescalamos os recursos para um novo projeto. Além disto, ao vermos a necessidade, podemos reduzir nossos recursos caso eles estejam ociosos. Isto tudo é possível graças a estrutura que montamos para o DialCloud +

Ambiente de testes em nuvem

Durante todo o processo de desenvolvimento os testes são parte integrante. Cada item, cada funcionalidade deve ser testada em diversos aspectos. Claro que de acordo com a complexidade alcançada em cada empresa, este processo pode ser mais dividido ou ser um simples teste de usabilidade com o usuário final.

O fato aqui é que o ambiente de testes proporciona que seus testes mantenham a segurança dos dados que já estão em produção. Assim tudo que foi desenvolvido pode ser colocado a prova.

Neste ponto a escalabilidade da estrutura em cloud computing se torna ainda mais eficiente. Afinal, testes são frequentes mas, sempre possuem um ponto final para que sejam coletados os resultados e assim passemos para a correção dos problemas encontrados.

Com a escalabilidade podemos subir uma nova instância apenas as configurações necessárias. Ao final  da análise dos testes é possível finalizar a instância reduzindo assim seu custo operacional novamente.

Por fim, ao utilizar esta estrutura para testes, podemos simular funcionalidades avançadas, ainda na fase de testes. Exemplo disso seria a necessidade de balancear cargas após identificar algum gargalo durante um teste de carga.

Vantagens

  • Melhor custo e flexibilidade de recursos para o desenvolvimento do projeto
  • Melhor controle nas configurações padrões de cada ambiente para cada desenvolvedor
  • Facilidade na padronização das configurações de desenvolvimento, teste  e produção
  • Possibilidade de testar diferentes configurações, recursos e cargas
  • Possibilidade de utilizar serviços avançados que requerem tecnologias ou competências que não estão disponíveis em sua estrutura interna
  • No caso de uma equipe grande é possível reduzir bem o custo com infraestruturas nestes ambientes.

Desvantagens

  • Você dependerá sempre de uma conexão com a internet
  • Apesar de pequena a chance (Considerando bons data centers), é preciso pensar em uma solução para caso a nuvem falhe.
  • Ainda é necessário se preocupar com estratégias de backup e recuperação e possíveis perdas de dados durante testes.

Algumas Referências

Tenha controle e flexibilidade nos seus recursos com DialCloud +. Servidores em cloud com load balancing, VPN e todo o controle de rede que você precisa. Saiba Mais.

 

Felipe Moraes
Felipe Moraes

Desde pequeno eu adorei tecnologia e este sentimento me fez estudar e trabalhar com desenvolvimento, design de interfaces e interação. Esta vontade de melhorar e aprender com a tecnologia me fez estar aqui na DialHost desde 2012.

Será que meu site está precisando de um cloud?

Seu site está precisando de um cloud - Padaria exemplo

Imagem ilustrativa

Os fatores necessários para sair da hospedagem compartilhada e partir uma estrutura cloud envolvem, analisar o crescimento do seu site e uso de recursos. Este é o primeiro assunto que vamos abordar nesta série sobre Cloud computing. Vamos iniciar a abordagem desta tecnologia que chegou há alguns anos e vem tomando conta do mercado web, para diversas soluções.

A utilização de sites em empresas se tornou abrangente ao ponto de você ver aquela boa e velha padaria ter um site para você ver fotos maravilhosas de pães, ver horários de funcionamento e alguma forma de contato com ela. Estes sites conhecidos como sites institucionais, são vastamente atendidos pela hospedagem compartilhada de sites. Este serviço mais, comum pelo custo benefício, traz uma ótima forma de lançar seu negócio online sem pesar o orçamento da empresa.

Este exemplo acima pode ser um pouco básico para uma hospedagem compartilhada que comporta o uso de muitos sites mais complexos como pequenos blogs e pequenas lojas virtuais. Digo pequenas pois uma mesma plataforma pode variar bastante o uso de recursos de acordo com fatores como quantidade de acessos, fluxos de processos do site, Como compras, geração de notas fiscais e etc, que podem consumir o recurso mais limitado de uma hospedagem compartilhada.

Vamos voltar ao nosso exemplo básico da padaria? Esta padaria que até então deixava apenas dados para contatos e imagens estáticas resolve criar mais interação com seu público disponibilizando horários das fornadas dos seus pãezinhos quentes. Ok, até então são apenas dados estáticos e que não influenciaria em muita coisa para mudar para uma estrutura cloud. O fato é que esta simples ação muda suas visitas de uns 200 usuários para 1.200 diariamente.

Com o aumento do volume de visitas a padaria acredita que está na hora de lançar um serviço que facilite a encomenda destes pãezinhos e lança um Delivery online de pãezinhos e itens de padaria para a região onde ela atende. Agora, ela conta com seu site todo em Magento com controle dos preços entregas etc… Com alguns meses investindo em divulgação do novo serviço os antigos 1.200 usuários diários são agora clientes diários e o número de usuários já passa dos 12.000 e ela começa a distribuir para mais de 5 bairros da região.

Opa! Agora começamos a falar de complexidade de processos. Mesmo sendo um modelo de comércio eletrônico teoricamente simples, o volume de processos e usuários que acessam esta padaria já não suportam mais dentro de uma hospedagem compartilhada. O número de interações e serviços que antes eram simples telas estáticas com um telefone e horários do pãozinho, começam a forçar os limites da sua hospedagem compartilhada. E mesmo que ela não seja bloqueada por tráfego seu site começará a cair constantemente por atingir recursos físicos da máquina.

Agora a menos que você esteja disposto a desembolsar em um servidor dedicado, apostar em uma estrutura cloud pode ser uma solução bem mais atrativa. E ai temos uma bifurcação…

Escolhendo o cloud que se adequa ao seu negócio

Se neste momento a nossa padaria já possuir uma equipe de desenvolvimento para gerenciar este cloud ou o projeto já estiver demandando uma divisão de recursos entre instâncias que controlem áreas como: banco de dados, arquivos estáticos e a plataforma em si, seria recomendado entrar com uma solução de cloud computing como o DialCloud +. Entre as grandes vantagens de ir para este modelo cloud estão:

  • Mais recursos que uma hospedagem compartilhada, além destes recursos serem dedicados a sua aplicação;
  • Melhor possibilidade de crescer os recursos com o crescimento do negócio;
  • Melhor flexibilidade e controle dos recursos e instâncias;
  • Acesso remoto direto ao servidor (acesso SSH);

Por outro lado, esta flexibilidade deixa por conta do cliente/desenvolvedor a responsabilidade de realizar configurações e não oferece serviço de e-mail, padrão de uma hospedagem.

Agora para uma solução que mantenha a mesma estrutura que esta padaria tinha, mas que otimize os recursos e o processo do site, existe a opção da Hospedagem Cloud. As grandes vantagens deste modelo são:

  • Mais recursos que uma hospedagem compartilhada, além destes recursos serem dedicados a sua aplicação;
  • Melhor possibilidade de crescer os recursos com o crescimento do negócio;
  • Não é necessário se preocupar com configurações de servidor. Eles já vêm configurados no padrão de uma hospedagem compartilhada;
  • Serviço de e-mails já inclusos

Neste caso você perde um pouco da flexibilidade como o controle de instâncias e o acesso direto a servidor.

Como podemos ver, em termos de recurso as duas opções serão semelhantes, assim tudo vai depender de precisar de mais flexibilidade e controle dos recursos ou ter tudo pré-configurado para simplesmente realocar o site  para um ambiente que tenha mais recursos.

Concluindo

Neste artigo pontuei um exemplo simples de um site institucional que passou por uma mudança simples de interação, cresceu para um e-commerce pequeno e que ao crescer como negócio online precisou sair de uma hospedagem compartilhada para uma solução em cloud computing pois vinha perdendo estabilidade e desempenho devido ao fluxo e complexidade de processos. O mesmo caso ocorre em blogs que crescem em termos de conteúdo e movimento de usuários ou em portais.

Tenha todo o desempenho para o seu site com a Hospedagem Cloud DialHost. Servidores em cloud prontos para receber sites em PHP. Saiba Mais ou veja nossos produtos.

 

DialHost
DialHost

Contamos com nosso DataCenter no Brasil de alta qualidade, estabilidade e confiança para hospedar seu site. Utilize poderosas ferramentas para otimizar o uso do seu serviço e seja sempre atendido de forma rápida e clara pelo nosso atendimento 24h.

As nuvens e os desafios da conexão em 2015

Cloud computing

Cloud computing

A popularidade da computação em nuvem é incontestável, afinal, é uma solução de baixo custo e que apresenta claros benefícios de produtividade.  Como as empresas buscam atingir resultados expressivos com menores investimentos, é natural observar adesão crescente deste mercado.

Soma-se a este cenário o fato de que a economia brasileira está desacelerada e as companhias procuram desonerar suas áreas de Tecnologia da Informação para, então, concentrar todos os esforços em seus negócios.

Um estudo da Frost&Sullivan reafirma esta tendência ao apontar que as organizações deverão investir cerca de US$ 1,1 bilhão em cloud computing até 2017 – aportes que, em 2013, foram equivalentes a US$ 328,8 milhões. Os investimentos são relevantes, mas e o direcionamento? É, de fato, assertivo?

Quando o assunto é cloud computing, a primeira palavra que aparece em nossas mentes, geralmente, é a segurança. Claro que é uma característica importante, mas a conectividade também é ponto fundamental para o desenvolvimento das empresas. Uma nuvem segura pode ser sinônimo de mais eficiência dentro das organizações somente se acompanhada de aspectos como acesso ágil e conexão de qualidade.

Vale lembrar que a infraestrutura para prover essa conectividade é diferente de região para região. Surge então o assunto: Pontos de Troca de Tráfego (PTT), que garantem uma conexão segura e, principalmente, eficiente e confiável.

Os PTTs funcionam como um ponto de convergência, onde os provedores conectam seus servidores para facilitar a troca de dados. Aqui no Brasil, o Núcleo de Informação e Coordenação do Ponto Br (Nic.br) cuida do projeto PTT.br.

A organização já investiu em 26 Pontos de Tráfego no país, pois, quanto maior e melhor for um PTT, mais os provedores conseguem trocar dados. Como consequência, eliminam-se os intermediários e os processos tornam-se mais eficientes, não existe necessidade de passar por diversos saltos de rede ou pools que, por apresentarem, muitas vezes, pontos de falha, podem aumentar significativamente a latência.

Pontos de Troca de Tráfego aproximam os usuários do conteúdo e, justamente nessa tendência de convergir interações, surge também a ideia pioneira de Cloud Exchange. Seu objetivo é concentrar os fornecedores e os compradores de cloud computing em um mesmo ambiente.

Para uma empresa interessada em computação em nuvem, a ideia de Cloud Exchange é um enorme facilitador, já que a conectividade deixa de ser um empecilho potencial. O acesso à cloud fica simples, descomplicado – a organização consegue se conectar com qualquer outro player do ambiente.

Imagine a riqueza de negócios existente em um ecossistema onde as companhias conseguem acessar recursos de nuvem com o melhor processamento possível. Com a conexão direta empresa/provedor é possível extrair o melhor desempenho em nuvem.

O próximo grande passo do cloud computing é o PTT somado ao Software Defined Networking. O SDN chega para solucionar empecilhos de redes empresariais – cada vez mais complexas. São muitos e diferentes protocolos utilizados, desenvolvidos, em sua maioria, de forma independente um do outro.

Essa diversificação impede que a rede seja facilmente escalável ou, então, que outros dispositivos e aplicativos sejam acrescentados. Novos protocolos são gerados e isso acaba engessando muitos processos. O SDN separa os dados de acordo com as regras de um novo servidor, por exemplo.

Assim, uma vez conectada em um PTT de clouds, a empresa poderá escolher, através de um portal, em quais nuvens deseja estar conectada. São diferentes possibilidades de conexões virtuais e isoladas que permitem acesso aos dados e adequações sem atingir o funcionamento da rede de produção.

A nuvem, combinada ao SDN, estimula claramente a inovação dos processos, pois permite testar novas opções para antigos procedimentos.  A cloud, certamente, é o próximo grande motor para gerar conteúdo e, por isso, precisamos ficar atentos para crescente necessidade de uma conexão cada vez melhor.

Os fornecedores ainda estão muito pulverizados, mas a ideia de Cloud Exchange pode mudar radicalmente – de hora para outra – este cenário. Os benefícios da nuvem vão muito além da redução de custos e os pontos de atenção para migrar a infraestrutura de TI de uma empresa para a cloud vão muito além da segurança.

—–

Artigo publicado no site ComputerWorld.

DialHost
DialHost

Contamos com nosso DataCenter no Brasil de alta qualidade, estabilidade e confiança para hospedar seu site. Utilize poderosas ferramentas para otimizar o uso do seu serviço e seja sempre atendido de forma rápida e clara pelo nosso atendimento 24h.

Cloud Computing: 10 boas práticas

cloud-computing

Cloud computing

O valor que a cloud computing vem proporcionando às organizações vem aumentando e se tornando um motivador de peso para a decisão pela mudança.

Para gerentes de TI o desafio é usar a nuvem tanto de forma eficaz quanto segura.

Por isso consultamos vários especialistas em nuvem e compilamos esta lista de 10 melhores práticas.

Melhor Prática # 1: Conheça suas nuvens
A nuvem não é um monolito. Na verdade, há uma variedade de nuvens com as quais os gerentes de TI terão que lidar, cada uma com suas próprias características e aplicações. Gestores inteligentes precisam saber que cloud é boa para eles, antes de mover os dados para fora de seus servidores e firewalls corporativos.

Melhor Prática # 2: Avalie suas atividades de TI
Para usar a nuvem de forma eficaz, os gestores de TI devem saber quais aplicativos trarão benefícios para os clientes na migração para a nuvem. Ed Mahon, vice-presidente e CIO da Kent State University, refere-se a este processo como “a contabilidade de custos baseado em atividade”. Isso significa olhar para as coisas que você faz atualmente em casa, e avaliar se poderiam ser feitas de forma mais eficiente na nuvem.

“Na verdade, você precisa dar uma olhada em tudo, não apenas o que você faz em casa, mas no que o departamento de TI é bom, e não é bom. Em alguns casos, se mover para a nuvem irá fornecer um melhor retorno. A nuvem também pode fornecer uma alternativa quando se trata de aplicações e infraestrutura que está chegando ao fim da vida”, diz ele.

Melhor Prática  # 3: Não cabe tudo na nuvem
Tendo selecionado a nuvem apropriada para os seus clientes com base em avaliações de custo baseado em atividades, os gestores de TI devem analisar os provedores de nuvem disponíveis e os aplicativos para ver qual deles melhor se adaptam às suas necessidades. Isto porque “não há um conjunto de diretrizes gerais que determinem quais aplicativos em nuvem funcionam melhor para todos os clientes”, diz John Howie, da Howie Consulting LLC. “É por isso que os gerentes de TI devem investigar as opções de nuvem que existem e compará-las com afinco contra as suas próprias necessidades, para encontrar o que realmente melhor se adapta às necessidades do seu cliente e dos sistemas de segurança de TI do departamento.”

Melhor Prática  # 4: Conformidade legal
Certas formas de informação – geralmente financeira e jurídica – devem ser mantidas em servidores próprios de uma empresa. O não cumprimento desses requisitos de conformidade “podem ​causar problemas para os negócios.

“É por isso que recomendamos uma abordagem híbrida para uso da nuvem”, diz Jeetu Patel, gerente geral da Syncplicity, cuja solução baseada em nuvem suporta o compartilhamento de sincronização segura de arquivos e colaboração. “Os dados que exigem conformidade regulamentar devem ser mantido no local”, diz Patel. “Outras informações, tais como informações de relações públicas sobre a empresa, podem ser armazenados e acessados ​​com segurança na nuvem.”

Melhor Prática # 5: Não há segurança em redundância
Não se deixe enganar pelo termo ‘cloud’: Nós realmente estamos falando sobre como acessar e confiar em servidores de outras empresas. Particularmente no cenário IaaS, é responsabilidade do gerente de TI se certificar de que há redundância capaz de assegurar que os servidores não vão falhar.

“Se você realmente pretende usar a nuvem de forma segura, em seguida, você deve escolher um prestador ou prestadores de serviços que armazenem seus arquivos em vários locais, com múltiplas formas de acessá-los”, diz John Howie. “Mas a questão não para por aí. Certifique-se de que você tem várias cópias de seus arquivos na nuvem, com interconexões entre eles para garantir que, quando um arquivo é atualizado, todos são atualizados.”

Melhor Prática  #6: Verifique seus fornecedores
Assim como a nuvem não é monolítica, nem são todos os provedores de nuvem o são. Gerentes de TI precisam examinar cuidadosamente o que cada provedor de nuvem lida com a promessa de backup.

“A questão não é tanto a segurança, uma vez que a maioria dos provedores de nuvem levam a segurança muito a sério”, diz Dave Elliott, Global Product Lead, Enterprise Cloud do Google.

“Mas o que você precisa se perguntar é que tipo de backups cada provedor tem, quais os protocolos de recuperação estão no lugar, e com que facilidade os funcionários do seu cliente poderão acessar os dados baseados em nuvem quando os sistemas primários estiverem indisponíveis.”

Melhor Prática # 7: Tire um tempo para migrar corretamente aplicativos para a nuvem
Ao migrar aplicativos on-premise para a nuvem, é vital fazer isso de uma maneira metódica, cuidadosamente considerada e testada passo-a-passo. É perigoso simplesmente carregar aplicativos para a nuvem, fazer alguns ajustes de configuração, e assumir que tudo vai funcionar como desejado – porque provavelmente não vai.

Infelizmente, esta última abordagem é tão comum entre os novos usuários da nuvem que Michael Kopp a coloca entre os maiores erros associados à implementação de nuvem. Koop é o gerente de tecnologia da Dynatrace.

“Tentar migrar aplicações existentes para a nuvem sem considerar as mudanças que são necessárias muitas vezes leva ao mau desempenho, falta e – ainda por cima – aumento de  custo”, diz Kopp. “Deve-se considerar as aplicações com cuidado e o que precisa ser mudado a fim de acomodá-la na nuvem e abraçar suas vantagens. Só então pode-se colher os benefícios de flexibilidade e redução de custos “.

Melhor Prática # 8: Maximize a segurança, mantendo o cliente satisfeito
“Para ter sucesso, a nuvem privada da empresa deve fornecer aos usuários a usabilidade nuvem pública-grade”, diz Patel, da Syncplicity. “Ao fazer isso, os gerentes de TI serão capaz de manter o uso de cloud com VPNs e firewalls, em vez de serem obrigados a presenciarem, pela conveniência dos usuários, a vê-los postar dados confidenciais em nuvens públicas.”

Melhor Prática  # 9: Mantenha um olho em tudo
Só por ser uma aplicação na nuvem, isso não significa que o departamento de TI possa se dar ao luxo de ignorá-la para se concentrar em outras coisas. Mesmo com os melhores provedores de nuvem, as coisas podem dar errado. É por isso que os gerentes de TI experientes mantêm um olhar atento sobre os seus dados e aplicativos baseados na nuvem, para detectar os problemas antes que se tornem sérios. Como Kopp adverte, “Usar a nuvem sem um acompanhamento adequado e um gerenciamento de desempenho de aplicações é como voar às cegas.”

Melhor Prática # 10: A responsabilidade é sua
A última e mais importante das melhores práticas em nuvem é aceitar que o conteúdo baseado em nuvem é de responsabilidade diária de um gerente de TI, como qualquer arquivo armazenado em seus servidores locais. Mover aplicativos e dados para a nuvem não diminui a responsabilidade da TI por eles. Simplesmente muda a natureza da responsabilidade, transformando-se em uma responsabilidade compartilhada, suportada tanto pelo provedor de nuvem quanto pelo gerente de TI que contratou a nuvem.

“Usar um serviço baseado em nuvem é como alugar um apartamento”, explica Maio. “Você não espera que o seu senhorio entre em seu apartamento e aspire o chão ou corrija o seu mobiliário. Mas você espera que seu senhorio corrija um problema com o encanamento ou eletricidade (mantenha a infraestrutura física em ordem). Em um cenário de provedor de nuvem, em última análise, é responsabilidade do consumidor proteger a integridade de suas aplicações rodando na nuvem”.

—–

Artigo de James Careless, publicado no ComputerWorld.

Conheça o DialCloud: estrutura de alto desempenho por um preço acessível. Confira nossos planos.

DialHost
DialHost

Contamos com nosso DataCenter no Brasil de alta qualidade, estabilidade e confiança para hospedar seu site. Utilize poderosas ferramentas para otimizar o uso do seu serviço e seja sempre atendido de forma rápida e clara pelo nosso atendimento 24h.