Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

ociceromartins

Projeto em produção

Recommended Posts

Olá pessoal,

Tudo bem?

 

A dúvida de hoje remete bem a galera que está acostumada a trabalhar em grandes projetos, por exemplo Facebook, Youtube e etc.

 

O projeto quando requer manutenção (exceto as emergenciais, que raramente ocorrem devido aos inúmeros testes) fica full time em operação.

 

Gostaria de saber como a galera desses projetos trabalham no desenvolvimento e testes de novos módulos.

Copiam o banco de dados, fazem todo o desenvolvimento e testes local e só depois sobem pro servidor de produção, ou possuem tipo um "subdomínio" de desenvolvimento no próprio servidor?

 

Há alguma estratégia eficiente pra isso ou cada um trabalha como se sente a vontade?

 

 

Penso que o maior segredo esteja no banco de dados, visto que o problema não é desenvolver e testar, mas sim ter as informações do banco de produção e conseguir testá-las sem danificar as informações.

Como o pessoal aqui do fórum está acostumado a fazer? Todas as vezes fazem uma cópia do banco pra desenvolvimento e teste?

 

 

Aguardo feedback.

 

 

Um abraço!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Primeiro que o FB e YT não tem "um" banco de dados... então fazer uma "cópia local" seria complicado.

 

Em um projeto gigante eu usaria a própria estrutura de redundância para resolver esta questão, assumindo que o sistema faça cópias das mesmas informações em vários locais, usaria um desses locais para desenvolver, assim teria o BD já com a massa crítica e poderia testar o que quisesse nele, tendo a garantia que ele estaria "isolado", por óbvio, essa "cópia" nunca deveria ser usada de fato como fonte de redundância, já que por via de regra ela teria dados de testes e poderia por si só comprometer o sistema. Acredito que para o sistema em si a lógica usada por ser a mesma, já que em sistema realmente gigantes existem vários servidores com os mesmo dados com load balance.

 

Mas isto tudo se aplica a 0.000001% dos sistemas... vamos ser francos, quantos sistemas gigantes como FB/YT existem por ai...

Compartilhar este post


Link para o post
Compartilhar em outros sites

ESerra,

 

Na verdade o YT/FB foram tomados como base apenas pra ficar evidente que é um sistema em constante produção. Não podendo por exemplo o link "eventos" sair do ar pra se implementar uma novidade.

 

E era exatamente esta a questão.

Na verdade o sistema não precisa nem ser gigante pra se precisar de algo desse tipo. Basta que precise que o ambiente de produção/banco de dados não fique comprometido quando se estiver desenvolvendo uma novidade.

 

 

Sua ideia é suficiente pra que eu compreenda. Ter um servidor "espelho" com a cópia do BD para se trabalhar no dev.

 

 

Obrigado e um abraço!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu não me preocuparia com a parte do desenvolvimento, eu acho mais crítico, por exemplo, se algum módulo para de funcionar, por exemplo, em uma loja virtual, se o cálculo do frete que depende do sistema dos correios para de funcionar, a loja para também (não dá pra finalizar a compra sem o frete), o que fazer nesta situação? Óbvio que tem que existir um sistema de retaguarda prevendo isto.

 

Para não fugir da realidade, terça fiz uma compra em uma loja física, eles estavam com problema na emissão da NF (falha na comunicação coma a SEFAZ), fiquei quase 30 minutos no caixa para pagar, quando consegui pagar (com cartão) a NF não saiu, hoje fui ver a fatura do meu cartão e a compra não consta lá (toda compra sempre aparece em 48 hs na fatura online), ou seja, é possível que o sistema tenha feito o cancelamento da transação porque não foi finalizada a compra (a finalização deve ocorrer após a emissão da NF), isto é uma situação aguda para um sistema.

Compartilhar este post


Link para o post
Compartilhar em outros sites

O que pode fazer é ter um modulo reserva, quando o sistema tiver em modo teste só o programador verá esse novo modulo ativo.. assim quem entra no site não verá fora do normal haha.. só que está programando e testando algo.

 

eu tenho um site que eu mesmo fiz um modulo que quando quero criar algo nele ativo nas páginas tais que vou modificar.. quando termino eu desativo ele e pronto ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.