Olá, você já deve estar sabendo que estamos em uma jornada em direção à nuvem, e que essa jornada é composta por várias etapas, certo?!
Pois é. Nesse momento estamos trabalhando para adequar o WES aos requisitos de alta disponibilidade e de escalabilidade.
Na prática estamos tornando o WES uma solução stateless, removendo a necessidade de afinidade de sessão. A afinidade de sessão, também conhecida como sticky session, exige que um usuário seja sempre atendido pelo mesmo servidor. Se este servidor falhar, o usuário é redirecionado e precisa fazer novo login. Isso também prejudica o balanceamento de carga, que é feito apenas no login.
Por quê?
Na nuvem e até mesmo on-premises a ideia é disponibilizar vários containers, onde cada container representa um servidor no modelo de FARM clássico, porém, estas instâncias são voláteis: novas instâncias sobem conforme a necessidade, ou são desligadas por redução da demanda ou por falha (alta disponibilidade e escalabilidade elástica).
Em aplicações modernas, como é o caso dos produtos Benner, esse movimento de containers deve permanecer totalmente transparente para o usuário final, que não sofre qualquer impacto com a remoção ou adição destas instâncias.
Como?
O WES costumava manter o contexto do usuário em memória, no servidor, durante todo o tempo que o usuário permanece com sua sessão ativa. Na próxima versão o contexto de usuário poderá ser mantido pelo Redis, um serviço a parte do WES. Dessa forma, independente do que aconteça com os containers de WES, o contexto do usuário permanece vivo no Redis, de forma transparente para o usuário.
O que é o Redis?
O Redis é uma solução de mercado utilizada principalmente como cache distribuído mas também pode ser utilizada como in-memory database ou broker de mensageria. Seu diferencial é a performance, ele é open source, não exige licenciamento, é compatível com containers, e a própria Microsoft avaliza seu uso fornecendo o RedisSessionStateProvider.
Curtiu?
Esse passo é extremamente importante, tanto para usabilidade dos produtos Benner quanto para a gestão e saúde de recursos computacionais onde nossos produtos são hospedados, tanto na nuvem quanto on-premises.
Estamos bem empolgados com essa evolução da nossa plataforma, principalmente porque percebemos o benefício que isso representa.
E você, qual sua opinião? Deixe seu comentário ou venha conversar conosco, será um prazer!