Trabalhar e mover-se com QUIC e Network Switching
O que é mais frustrante do que perder sua conexão 4D Remote com o 4D Server enquanto muda de rede em movimento?
Se está mudando de Ethernet para Wi-Fi ou pulando entre hotspots, conexões tradicionais tendem a cair, forçando 4D Remote a desconectar e reconectar.
Com 4D 21 e o protocolo QUIC, essas interrupções são coisa do passado.
QUIC é desenhado para ser resiliente durante mudanças de rede, mantendo sua sessão viva mesmo quando a conexão subjacente muda.
Nova classe para executar comunicações UDP
4D 20 R8 introduziu a classe TCPConnection, trazendo uma forma assíncrona e orientada a objetos para lidar com conexões de clientes TCP. Depois veio 4D 20 R9 com a classe TCPListener para construir servidores TCP. E agora, com 4D 20 R10, estamos completando o quadro com a nova classe UDPSocket, permitindo gerenciar comunicações UDP entre 4D e qualquer máquina remota, tanto como cliente quanto como servidor. Isso é especialmente útil para IoT, monitoramento em tempo real, ou trocas de transmissão. E a cereja do bolo? Essa classe suporta comunicação UDP preemptiva e assíncrona
Por fim, esse novo recurso está marcando a etapa final na substituição do plug-in de comandos da Internet herdado.
Vamos mergulhar nos detalhes.
Nova classe para lidar com ligações TCP de entrada
Em 4D 20 R8, introduzimos a classe TCPConnection, permitindo iniciar conexões TCP a servidores remotos. Com 4D v20 R9, estamos entusiasmados em trazer a classe TCPListener – sua chave para lidar com conexões TCP de entrada e construir um servidor TCP diretamente em 4D.
Com estas duas classes – TCPConnection e TCPListener – tem agora controlw total sobre a comunicação TCP, tanto do lado do cliente como do lado do servidor.
Vamos ver como usá-las juntas.
Nova classe para efetuar ligações TCP
Com o lançamento de 4D 20 R8, uma caraterística que muda o jogo chegou:: a classe TCPConnection. Essa classe moderna aproveita a sintaxe orientada a objetos e suporta o manuseio de conexão de rede assíncrona, oferecendo uma alternativa nova e poderosa aos Comandos de Internet 4D. Usando TCPConnection, pode conectar-se virtualmente a qualquer coisa – quer sejam servidores, impressoras, caixas registadoras ou dispositivos industriais – tornando-a uma ferramenta versátil para lidar com requisitos de rede únicos.
Nesta versão, a funcionalidade de cliente TCP está disponível, permitindo-lhe ligar-se a servidores externos e trocar dados sem problemas.
QUIC Network Layer está pronto para a produção!
Com a versão beta de 4D 20, apresentámos-lhe a nossa nova camada de rede: A camada de rede QUIC.
Naquela época, ainda estava em desenvolvimento e assim foi removido do lançamento oficial. Hoje, estamos felizes em anunciar que a camada de rede QUIC saiu da versão beta e está oficialmente pronta para produção!
Após rigorosos testes de carga e valioso feedback dos primeiros usuários, a estabilidade e o desempenho do QUIC foram validados – superandoaté mesmo o ServerNet em áreas-chave. Agora que QUIC alcançou a paridade de caraterísticas com ServerNet em 4D 20 R5, é o momento perfeito para considerar fazer a mudança.
Mas primeiro, deixe-me contar mais sobre estas grandes notícias.
Descontinuação da camada de rede herdada
Para lidar com a comunicação entre 4D Client e 4D Server, 4D propõe 3 camadas de rede diferentes:
- Legado,
- ServerNet,
- e QUIC.
A camada de rede Legacy foi introduzida 30 anos atrás em 4D v3. Foi originalmente desenvolvida para AppleTalk, melhorada para ISDN, e depois adicionada IPX e finalmente TCP/IP.
Foi criada para um uso Cliente/Servidor muito diferente do que 4D trabalha hoje: é single-threaded, otimizada para redes lentas sem encriptação e disponível para muitos protocolos de rede diferentes. Como tal, não é otimizado para comunicações de rede modernas e suporta um número muito limitado de características.
É por isso que, com 4D 20 R5, decidimos tornar a camada de rede Legacy obsoleta e planejamos removê-la em breve. Nós o encorajamos a mudar para ServerNet agora se ainda a estiver usando. Deixe-me explicar os benefícios que obterá com a mudança.
QUIC agora combina com as capacidades da ServerNet
A camada de rede QUIC é compatível com tantas características quanto a camada de rede ServerNet. Com 4D 20 R5, adicionamos compatibilidade para IPv6, broadcast, e Single Sign-on em Windows.
É claro que continuaremos a melhorá-la nas próximas versões para torná-la a melhor camada de rede que 4D já existiu.
Mas por agora, deixe-me falar um pouco mais sobre as últimas funcionalidades que adicionamos.
Novo objeto de sessão remota 4D com ligação Cliente/Servidor e procedimento armazenado
Nas aplicações 4D, existem quatro tipos de sessões: sessão 4D Remote, sessão Stored Procedure, sessão Mobile e sessão Web.
O comando Session já retornava sessões Web ou Mobile. Isso dá acesso a uma grande quantidade de informação sobre a sessão e um objeto compartilhado por todos os processos na sessão.
Em 4D 20 R5, o comando Session foi estendido para a conexão Cliente/Servidor e procedimento armazenado.
Camada de rede QUIC: Atualização automática e modo de suspensão
O nosso desenvolvimento da camada de rede QUIC continua, e com 4D 20 R4, temos agora o modo sleep e a atualização automática. Vamos dar uma olhada mais de perto nesses melhoramentos e ver como eles se comparam com a forma como trabalham com outras camadas de rede.
Ativar a camada QUIC a partir das definições de estrutura, utilizador e base de dados
Em 4D v20 beta, estávamos animados para mostrar nosso trabalho na nova camada de rede QUIC. Como a camada ainda está na versão beta, nós a desativamos para a versão final LTS. A camada QUIC estará disponível nos lançamentos de recursos, para que possa acompanhar seu desenvolvimento e nos ajudar a melhorá-la.
Enquanto 4D v20 permitia a mudança de camadas de rede apenas em aplicações interpretadas e forçava uma nova compilação para aplicações com motor, 4D v20 R2 permite a mudança de camadas em aplicações compiladas/compiladas através das Configurações de Estrutura, Usuário e Banco de Dados para facilitar testes mesmo em produção.
Contacte-nos
Tem uma pergunta, sugestão ou apenas quer entrar em contacto com os bloggers 4D? Deixe-nos uma linha!
* A sua privacidade é muito importante para nós. Por favor clique aqui para ver os nossos Política
