O Pneu Furou? Compre um carro novo!
Quando iniciei no meu atual emprego, a empresa estava definindo que iria migrar todos os ambientes para a nuvem, seguindo a seguinte lógica:
Ambientes com tecnologia Microsoft iriam pra Azure.
Ambientes com outras tecnologias iriam para AWS.
Acho que a estratégia é justificável, mas eu faria de outra forma, o que não vem ao caso. Este artigo é para tratar de outro assunto: A criação de dificuldades para vender facilidades.
O Fato.
Alguns clientes começaram a reclamar que suas plataformas, após a inclusão de um usuário novo, só permitia que este acessasse a plataforma após uma hora. Começamos a investigar os códigos da aplicação e não encontramos nenhum erro no código. Em um dado momento, verificamos que o horário do web server estava diferente do fornecido pelo banco de dados, que encontra-se em uma SQL Server Azure Managed Instance.
A Solução
Problema simples de resolver, afinal, é só alterar o horário e/ou time zone da MI, certo?
ERRADO!
Para resolver este problema, teremos que recriar a instância e transferir os dados, pois alterar este parâmetro não é possível, conforme mostra a documentação da Microsoft (https://docs.microsoft.com/pt-br/azure/sql-database/sql-database-managed-instance-timezone)
A Conclusão
Ou seja, se você estiver viajando com um carro fabricado pela Microsoft Motors e o pneu furar, você terá que comprar outro carro, trocar as bagagens de carro para prosseguir viagem.
Espero que a Microsoft reveja este problema ou teremos que rever nossas políticas de nuvem.
Antes deste problemas, já tínhamos alterado a estratégia de utilizar as Managed Instances, passando para Virtual Machines com SQL Server, pois temos mais controle sobre nossos ambientes.